ТОП 10:

inc( CurrentSpeed,15); //Увеличиваем скорость



end;

Label1.caption:=Label1.caption+

'Вы превысили максимально допустимую скорость !';

end;

End.

Задание 3. 4. Код модуля проекта «Суммирование элементов главной диагонали матрицы в таблице»

procedure TForm1.FormCreate(Sender: TObject);

var i:byte;

Begin

Brush.Style:=bsSolid;

Brush.Style:=bsDiagCross;

Brush.Color:=cllime;

for i:=0 to StringGrid1.ColCount-1 do

Begin

StringGrid1.ColWidths[i]:=30;

StringGrid1.Cells[0,i]:=IntToStr(i);

StringGrid1.Cells[i,0]:=IntToStr(i);

end;

end;

procedure TForm1.Button1Click(Sender: TObject);

var sum,i,j:byte;

Begin

sum:=0;

for i:=1 to StringGrid1.ColCount-1 do

for j:=1 to StringGrid1.ColCount-1 do begin

if i=j then sum:=sum+

StrToInt(StringGrid1.Cells[i,j])

*SpinEdit1.value;

end;

Label1.Caption:=''+'Сумма элементов главной диагонали =';

SpinEdit2.Value:=sum;

end;

End.

Задание 3. 5. Код модуля проекта «Реализация товаров на примере работы с таблицами»

procedure TForm1.FormCreate(Sender: TObject);

var i:byte;

Begin

for i:=1 to 4 do

Begin

StringGrid1.ColWidths[i]:=40;

StringGrid1.Cells[i,0]:=inttostr(i);

StringGrid1.Cells[0,i]:='Tovar'+inttostr(i);

end;

StringGrid1.Cells[0,5]:='SumKol';

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

var SumKol,i,j,f:Integer;

Begin

for j:=1 to 4 do begin

SumKol:=0;

for i:=1 to 4 do begin

SumKol:= SumKol+strToInt(StringGrid1.Cells[j,i]);

StringGrid1.Cells[j,5]:=IntToStr(SumKol);

end;

end;

for i:=1 to 4 do begin

f:=StrToInt(StringGrid1.Cells[i,5]);

series1.AddXY(i,f,'',clred);

end;

end;

procedure TForm1.BitBtn2Click(Sender: TObject);

Begin

form1.Hide;

end;

End.

Задание 3. 6. Код модуля проекта «Графическое отображение данных»

procedure TForm1.SpeedButton1Click(Sender: TObject);

Begin

With Series1 do

Begin

Add(500,'Noutbook1',clRed);

Add(1000,'Noutbook2',clRed);

Add(1500,'Noutbook3',clRed);

Add(700,'Noutbook4',clRed);

Add(1800,'Noutbook5',clRed);

end;

end;

procedure TForm1.SpeedButton2Click(Sender: TObject);

Begin

With Series2 do

Begin

Add(19500,'Noutbook1',clRed);

Add(39000,'Noutbook2',clLime);

Add(21900,'Noutbook3',clGreen);

Add(37600,'Noutbook4',clBlack);

Add(41000,'Noutbook5',clOlive);

end;

end;

procedure TForm1.SpeedButton4Click(Sender: TObject);

Var

i:byte;

Begin

Series4.Clear;

Series5.Clear;

for i:=0 to 100 do begin

Series4.AddXY(0.02*Pi*i,sin(0.02*Pi*i),'',clRed);

Series5.AddXY(0.02*Pi*i,Cos(0.02*Pi*i),'',clGreen);

end;

end;

procedure TForm1.SpeedButton3Click(Sender: TObject);

Begin

With Series3 do

Begin

Add(500,'Noutbook1',clRed);

Add(1000,'Noutbook2',clRed);

Add(1500,'Noutbook3',clRed);

Add(700,'Noutbook4',clRed);

Add(1800,'Noutbook5',clRed);

end;

end;

end.Задание 3. 7. Код модуля проекта «Сортировка массива из случайных величин»

procedure TForm1.BitBtn1Click(Sender: TObject);

Begin

Form1.Hide

end;

procedure TForm1.Button1Click(Sender: TObject);

Var mas1:array of integer;

K,i,j,kk:integer;

Begin

panel1.Caption:='';

panel2.Caption:='';

K:=TrackBar1.Position; //установка движка трека

SetLength(mas1,K) ; //динамический массив

{ввод массива}

For i:=0 to k-1 do

Begin

mas1[i]:=random(50); //заполнение массива случайными числам

panel1.Caption:=panel1.Caption+' '+inttostr(mas1[i]);

end;

{сортировка}

For j:=0 to k-1 do begin

kk:=0;

For i:=0 to k-1 do begin

if mas1[j]<mas1[i] then

Begin

kk:=mas1[i];

mas1[i]:=mas1[j];

mas1[j]:=kk;

end;

end;

end;

// вывод отсортированного массива в панели

For i:=0 to k-1 do

panel2.Caption:=panel2.Caption+' '+inttostr(mas1[i]);

end;

procedure TForm1.FormCreate(Sender: TObject);

Begin

Brush.Style:=bsSolid;

Brush.Style:=bsCross;

Brush.Color:=clRed;

Label1.Caption:=IntToStr(TrackBar1.Position);

end;

procedure TForm1.TrackBar1Change(Sender: TObject);

Begin

Label1.Caption:=IntToStr(TrackBar1.Position);

end;

End.

Задание 3. 8. Текст кода модуля проекта «Перевод чисел из 2 –ой системы счисления в 10 – ю и наоборот»

procedure TForm1.okClick(Sender: TObject);

Begin

If Edit1.Text<>'' then

Case RadioGroup1.ItemIndex of

If Test2

then Rewer2_10

else ShowMessage('Это не двоичное число');

If Test10

then Rewer10_2

else ShowMessage('Это не десятичое число');

End

else ShowMessage('Пустая строка');

end;

//

function TForm1.Test2:Boolean;

Var

i:byte;

ok:Boolean;

s:string;

Begin

s:=Edit1.Text; ok:=True;i:=0;

while (i<length(s)) and ok do begin

i:=i+1; ok:=s[i] in ['0','1'];

end;

test2:=ok;

end;

function TForm1.Test10:Boolean;

Var

i:byte;

ok:Boolean;

s:string;

Begin

s:=Edit1.Text; ok:=True;i:=0;

while (i<length(s)) and ok do begin

i:=i+1; ok:=s[i] in ['0'..'9'];

end;

test10:=ok;

end;

Procedure TForm1.Rewer10_2;

var i:byte;

l:integer;

s:string;

Begin

l:=StrToInt(Edit1.Text);s:='';

While l <>0 do begin

s:=IntToStr(l mod 2)+s;l:=l div 2;

end;

label1.caption:=s;

end;

Procedure TForm1.Rewer2_10;

var i:byte;

l:integer;

s:string;

Begin

s:=Edit1.Text; l:=0;

for i:=1 to length(s) do l:=2*l+ ord(s[i])-ord('0');

//

label1.caption:=IntToStr(l);

end;

End.

Задание 3. 9. Текст кода модуля проекта «Вычисление среднего арифметического массива»

procedure TForm1.FormCreate(Sender: TObject);

Begin

Brush.Style:=bsCross;

Brush.Color:=cllime;

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

Var

j,i:byte;

ms:array[1..25] of Double;

Begin

LstBox.Clear;

LstBx2.Clear;

j:=0;

for i:=1 to 25 do

ms[i]:=0;

for i:=1 to 25 do begin

LstBox.Items.Add(FloatToStrF(random*50,ffFixed,4,2));

end;

Repeat

LstBox.Selected[j]:=true;

If LstBox.Items[j]<>'' then begin

LstBx2.Items.Add(LstBox.Items[j]);

Inc(j,3);end;

until j>25;

for i:=1 to LstBx2.Count-1 do

ms[i]:= StrToFloat(LstBx2.Items[i]);

Edit1.Text:=FloatToStr(Mean(ms));

end;

procedure TForm1.BitBtn2Click(Sender: TObject);

Begin

close;

end;

End.

Задание 3. 10. Код модуля проекта «Работа с текстовым файлом в режиме Opendialog»

procedure TForm1.Button1Click(Sender: TObject);

Var

S:string;

f:TextFile;

FileName:string[15];

Begin

// Настраиваем диалог на отбор текстовых файлов

OpenDialog1.Filter:='Текстовые файлы(*.txt)' +

'Файлы Паскаля(*.pas)';

//выполняем диалог и анализируем результат

If OpenDialog1.Execute and

FileExists(OpenDialog1.FileName)then

Begin

//Если результат успешный- выбран нужный файл

// открываем найденный файл

AssignFile(F,OpenDialog1.FileName);

reset(F);

memo1.Lines.Clear;

While not EOF(F) do

Begin

Readln(F,S);

//заполняем memo1

memo1.Lines.Add(S);

end;

CloseFile(F);

End

Else

ShowMessage('not file');

end;

End.


Приложение 3. Сообщение об ошибках

В результате компиляции могут быть сделаны замечания(), предупреждения() и сообщения об ошибках, см. ниже - Пример сообщений об ошибках.

Сообщения компилятора располагаются в окне, расположенном ниже окна редактора кода.

Различают три разновидности сообщений: ошибки, подсказки, предупреждения.

Без устранения ошибки дальнейшая сборка проекта невозможна.

Подсказка подразумевает предложения компилятора по оптимизации кода.

Предупреждения не влияют на ход сборки проекта, но дают знать, что могут встретиться проблемы при выполнении программы. В нижеследующем примере приведены сообщения компилятора о 5 - ти ошибках, связанных с:

Отсутствием символа «:» .

Несоответствием типов.

В откомпилированной программе могут также появляться сообщения, возникающие по причине вводимых данных, отсутствии файла, на который есть ссылка и т. д.:

Ошибки выполнения программы, например, деление на 0.

Логические(получен неверный результат).

Пример сообщений об ошибках.

Так выглядит кодовая часть проекта с декларацией ошибок.


СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ

№№ п.п. Автор НАИМЕНОВАНИЕ Год издания
Тюкачев Н., Михайлова Е. Программирование в DELPHI для начинающих. БХВ Петербург,2007г.
Тюкачев Н., Михайлова Е. Основы программирования в DELPHI. Учебное пособие. Воронеж. ВГУ, 2004, 283с.
Поган А. Мастер – Класс. Delphi. Руководство программиста Москва. Изд - во «ЭКСМО»,2006г.
Тюкачев Н., Свиридов Ю. Delphi 5. Создание мультимедийных приложений. СПб., Москва, Минск. 2001г.
Фаронов В. Delphi. Программирование на языке высокого уровня. М:Питер, 2003,639с.
Хватова Ф., Ермина М. Методические материалы (электронная форма) 2011- 2012г

 







Последнее изменение этой страницы: 2016-04-08; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.232.125.29 (0.019 с.)