Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пример 2 лабы .doc
Скачиваний:
4
Добавлен:
01.05.2015
Размер:
223.23 Кб
Скачать

Тема3. Циклические алгоритмы.

4А. Припишите к числу ***999 такие три цифры, чтобы полученное шестизначное число делилось на 13,17,19.

procedure TForm1.Button1Click(Sender: TObject);

var a,n, i :integer; нет

begin

for i:=100 to 999 do begin

n:=1000*i+999;

if ((n mod 13)=0) and ((n mod 17)=0) and ((n mod 19)=0) да

then

memo2.lines.add(inttostr(n));

end;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

memo2.clear;

end;

end.

// 1) – n:= 100000, 999999,1

// 2) if ((n mod 13)=0) and ((n mod 17)=0) and ((n mod 19)=0)

9В.Женщина шла на базар и разбила яйца, лежавшие у нее в корзине. Она сказала, что не знает сколько яиц было, но когда она брала по 2,3,4,5 и 6 яиц то оставалось в остатке одно. Когда же она брала по 7 яиц, то ничего не оставалось в остатке. Сколько яиц могло быть в корзине.

procedure TForm1.Button1Click(Sender: TObject);

var n:integer;

begin

n:=strtoint(edit1.Text);

for n:=1 to n do

if (n mod 2=1) and (n mod 3=1) and (n mod 4=1) and (n mod 5=1) and (n mod 6=1)

and (n mod 7=0)

then memo1.Lines.Add(inttostr(n))

end;

procedure TForm1.edit1onkeypress(Sender: TObject; var Key: Char);

begin

case key of

'0'..'9',#8:;

#13: button1.setfocus;

else key:=chr(0);

end;

end;

procedure TForm1.Button2Click(Sender: TObject); нет

begin

memo1.Clear;

end;

end. да

// 1) n:=1,500,1

// 2) if (n mod 2=1) and (n mod 3=1) and

(n mod 4=1) and (n mod 5=1) and (n mod 6=1)

Тема4. Массивы

4А. Найти номер максимального элемента таблицыa[1..10]. (Глобальное объявление:

Var form1: tform1;

a:array[1..10] of integer

max, i, k :integer;

procedureTForm1.Button1Click(Sender: TObject);

begin

max:=a[i-1];

for i:=2 to 10 do

if a[i]>max then

begin

max:=a[i];нет

k:=i;

end;да

label1.caption:=inttostr(max);

label2.caption:=inttostr(k);

end;

// 1) for i:=2 to 10 do

// 2) if a[i]>max then

Кнопка Random для задач 4А и 9А:

procedureTForm1.Button2Click(Sender: TObject);

begin

randomize;

for i:=1 to 10 do

begin

a[i]:=random(100);( в задаче 9А добавим -10, для отрицательных чисел)

stringgrid1.cells[i-1,0]:=inttostr(a[i]);

end;

end;

end.(? Блок схема)

9А. Найти сумму третьего и шестого положительных элементов одномерного массива.

procedureTForm1.Button1Click(Sender: TObject);

var i,k:integer;

begin

randomize;

for i:=1 to 25 do

begin

a[i]:=random(20)-10;

stringgrid1.Cells[i-1,0]:=inttostr(a[i]);

end;

end;

procedure TForm1.Button2Click(Sender: TObject); нет да

var i,k,l:integer;

begin

k:=1;

for i:=1 to 25 do begin

if (a[i]>0) then

begin

b[k]:=a[i];

k:=k+1;

end;

stringgrid2.cells[k-1,0]:=inttostr(b[k]);

begin

for l:=1 to k do begin

n:=b[3]+b[6];

label1.caption:=inttostr(n);

end;

end;

end;

end;

procedure TForm1.Button3Click(Sender: TObject); // очиста ячеек в стинг гриде 2 для конечных цифр

var

m, n: Integer;

begin

with StringGrid2 do

for m := 0 to ColCount - 1 do

for n := 0 to RowCount - 1 do

Cells[m, n] := '';

end;

end.

//1)- n:=1,25,1 2) - a[i]>0 3) - l:=1,k,1