Читайте также:
|
|
FOR | WHILE, REPEAT |
1.Тип переменных: integer, char | Любые |
2. Шаг = 1 или -1 | Любой |
3. Количество повторений цикла может быть только строго определено. | Неизвестно |
Массивы
Одномерные массивы
1йСпособ описания массива.
VAR имя массива: ARRAY [нач. знач. интервала.. конеч.знач. интер.] OF базовый тип;
Пример:
VAR A: ARRAY[1..10] OF INTEGER;
2йСпособ описания массива.
TYPE имя типа=ARRAY [нач. знач. интервала.. конеч.знач. интер.] OF базовый тип;
VAR имя массива: имя типа;
Пример:
TYPE MAS=ARRAY[1..10] OF REAL;
VAR A: MAS;
Ввод и вывод одномерного массива.
FOR I:=1 TO 10 DO
BEGIN
WRITE ('A[ ', I, ' ]=');
READLN (A[ I ]);
END;
Заполнение одномерного массива случайными числами:
BEGIN RANDOMIZE; {инициализация счетчика случайных чисел}
FOR I:=1 TO 10 DOA[ I ]:= RANDOM (10); {целые числа}
END.
Вывод элементов одномерного массива.
FOR I:=1 TO 10 DO WRITE (A[ I ], ' ');
Типовые алгоритмы обработки массивов.
Нахождение минимального (максимального) элемента массива.
MIN:= A[ 1 ]; {MAX:=A[ 1 ]}
FOR I:=2 TO 5 DO
IF MIN > A[ I ] {MAX < A[ I ]} THEN MIN:= A[ I ]; {MAX:= A[ I ]}
Массив – это упорядоченный набор однотипных элементов.
I,J | |||||
Var
A, Mas: array [1..3,1..5] of integer;
А) с клавиатуры
for i:=1 to 5 do
for J:=1 to 5 do read(a[i,j]);
B) случайными числами из интервала [a,b]. Например, числами от 10 до 39.
Randomize;
For i:=1 to 5 do
for J:=1 to 5 do a[i,j]:=random (30)+10;
С) по правилу. Например, элементы равны корню из произведения номеров строк и столбцов.
For i:=1 to 5 do
for J:=1 to 5 do a[i,j]:=2*sqrt(i*j);
For i:=1 to 5 do begin
for J:=1 to 5 do write(a[i,j]:2);
writeln;
end;
Дан массив размерностью nxm., заполненный случайными числами из интервала от –5 до 25. Найти количество элементов массива больших 20. Найти сумму элементов меньших 10.
Var
I,n,k,s:integer;
A: array [1..100,1..100] of integer;
Begin
Writeln(‘введи размерность массива’); readln(n,m);
Randomize;
For i:=1 to n do
for J:=1 to m do a[i,j]:=random (30)-5;
For i:=1 to n do begin
for J:=1 to m do write(a[i,j]:2);
writeln;
end;
S:=0;k:=0;
For i:=1 to n do
For j:=1 to m do begin
If a[i,j]<10 then s:=s+a[i];
If a[i,j]>20 then k:=k+1;
End;
Writeln(‘сумма =’,s:2)
Writeln(‘количество =’,k:2)
End.
Найти минимальный (максимальный) элемент двумерного массива.
MIN:= A[ 1, 1 ]; {MAX:=A[ 1, 1 ]} STR:=1; STL:=1;
FOR I:=1 TO N DO
FOR J:=1 TO M DO IF MIN > A[ I, J ] {MAX < A[ I, J ]} THEN
BEGIN
MIN:= A[ I, J ]; STR:=I; STL:=J;
{MAX:= A[ I, J ]; STR:=I; STL:=J}
Вычислить сумму элементов главной диагонали квадратной матрицы.
SUM:=0;
FOR I:=1 TO N DO SUM:= SUM + A[ I, J ];
Дата добавления: 2014-12-19; просмотров: 52 | Поможем написать вашу работу | Нарушение авторских прав |