Помогите решить задачи по информатике, пожалуйста. Если что проверять задачи нужно будет...

0 голосов
43 просмотров

Помогите решить задачи по информатике, пожалуйста. Если что проверять задачи нужно будет в Паскале.
1.Найти максимальный элемент в массиве из 11-ти чисел [0,100] и вывести его порядковый номер.
2.Найти минимальный элемент в массиве из 11-ти чисел[20,70] и определить, насколько каждый элемент массива больше него.
3.Просуммировать все четные числа в массиве из 15-ти элементов [2,12].
4.В одномерном массиве произвольных чисел найти наибольший элемент из отрицательных.


Информатика (44 баллов) | 43 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

1.
const n=11;
var a:array[1..n] of integer;
max,imax,i:integer;
begin
Randomize;
for i:=1 to n do begin
 a[i]:=random(101);
 write(a[i],' ');
 end;
writeln;
max:=a[1]; imax:=1;
for i:=2 to n do
 if a[i]>max then begin max:=a[i]; imax:=i; end;
writeln('max = ',max,'  imax = ',imax);
end.

Пример:
67 3 11 65 72 82 18 42 8 74 40 
max = 82  imax = 6

2.
const n=11;
var a:array[1..n] of integer;
min,i:integer;
begin
Randomize;
for i:=1 to n do begin
 a[i]:=random(51)+20;
 write(a[i]:3);
 end;
writeln;
min:=a[1];
for i:=2 to n do
 if a[i]writeln('min = ',min);
for i:=1 to n do
 write(a[i]-min:3);
writeln;
end.

Пример:
 63 25 39 25 44 21 65 55 66 47 42
min = 21
 42  4 18  4 23  0 44 34 45 26 21

3.
const n=15;
var a:array[1..n] of integer;
s,i:integer;
begin
Randomize;
for i:=1 to n do begin
 a[i]:=random(11)+2;
 write(a[i]:3);
 end;
writeln;
s:=0;
for i:=1 to n do
 if a[i] mod 2 = 0 then s:=s+a[i];
writeln('s = ',s);
end.

Пример:
  2  3  5  9  3 12  5 10  3  2  3 10  8  8  3
s = 52

4.
const n=10;
var a:array[1..n] of integer;
max,i:integer;
begin
Randomize;
for i:=1 to n do begin
 a[i]:=random(51)-25;
 write(a[i]:4);
 end;
writeln;
max:=-10000;
for i:=1 to n do
 if (a[i]<0)and(a[i]>max) then max:=a[i];
writeln('max = ',max);
end.

Пример:
   1   1 -22  21 -25  17 -11 -13   9  16
max = -11

(194k баллов)