Задачи 1-2 урок 15 Одномерные массивы и работа с ними в Паскале.
Primary tabs
1.Пользователь вводит массив целых чисел из 7 элементов. Найдите из них самое большое число и выведите его на экран.
2.Пользователь вводит массив целых чисел из 7 элементов. Найдите из них два самых больших числа и выведите их на экран.
type // секция объявления типов
myArr = array[1..7] of integer; // массив из 7 элементов
var
a: myArr; // объявляем переменную типа myArr
i, max, n, max2 : integer;
begin
{ обходим первый раз массив,
значения которого ещё не инициализированы,
с целью присвоить значения элементам
}
for i:=low(a) to high(a) do
begin
writeln('vvedite element massiva nomer ', i, ':'); // пояснение для пользователя
readln(a[i]); // считываем элемент i массива 'a' из консоли
end;
n:=7; // Колличество элементов массива
a[1] := max; // Задаем первый элемент как максимальный
for i:=2 to n do //т.к. задан первый элемент то обход заданого масива начинаем с 2
begin
if (a[i] > max ) then // оператор ветвления проверяе на каждом шаге цикла максимальное число
max:=a[i];
end;
writeln('max element',' ',max );
a[1] := max2;
for i:= 2 to n do
begin
if (a[i] < max) and ( a[i] > max2) then
max2:=a[i];
end;
writeln('max2 element',' ',max2 );
readln();
end.- Log in to post comments
- 4994 reads
vedro-compota
Wed, 04/15/2020 - 19:40
Permalink
затираете значение
затираете значение
_____________
матфак вгу и остальная классика =)
pakot
Wed, 04/15/2020 - 21:12
Permalink
type // секция объявления
type // секция объявления типов myArr = array[1..7] of integer; // массив из 7 элементов var a: myArr; // объявляем переменную типа myArr i, max, n, max2 : integer; begin { обходим первый раз массив, значения которого ещё не инициализированы, с целью присвоить значения элементам } for i:=low(a) to high(a) do begin writeln('vvedite element massiva nomer ', i, ':'); // пояснение для пользователя readln(a[i]); // считываем элемент i массива 'a' из консоли end; n:=7; // Колличество элементов массива max:=0; max2:=0; for i:=2 to n do //т.к. задан первый элемент то обход заданого масива начинаем с 2 begin if (a[i] > max ) then // оператор ветвления проверяе на каждом шаге цикла максимальное число max:=a[i]; end; writeln('max element',' ',max ); for i:= 2 to n do begin if (a[i] <= max) and ( a[i] > max2) then max2:=a[i]; end; writeln('max2 element',' ',max2 ); readln(); end.vedro-compota
Wed, 04/15/2020 - 21:19
Permalink
а если
а если в массиве все элементы окажутся отрицательными??
_____________
матфак вгу и остальная классика =)
pakot
Wed, 04/15/2020 - 21:44
Permalink
type // секция объявления
type // секция объявления типов myArr = array[1..7] of integer; // массив из 7 элементов var a: myArr; // объявляем переменную типа myArr i, max, n, max2 : integer; begin { обходим первый раз массив, значения которого ещё не инициализированы, с целью присвоить значения элементам } for i:=low(a) to high(a) do begin writeln('vvedite element massiva nomer ', i, ':'); // пояснение для пользователя readln(a[i]); // считываем элемент i массива 'a' из консоли end; n:=7; // Колличество элементов массива max:=a[0]; max2:=a[0]; for i:=1 to n do // обход заданого масива begin if (a[i] > max ) then // оператор ветвления проверяе на каждом шаге цикла максимальное число max:=a[i]; end; writeln('max element',' ',max ); for i:= 1 to n do // обход заданого масива второй раз begin if (a[i] <= max) and ( a[i] > max2) then max2:=a[i]; end; writeln('max2 element',' ',max2 ); readln(); end.pakot
Wed, 04/15/2020 - 20:02
Permalink
type // секция объявления
1