Расчетная часть
Задание 1
I:=1,30,1
*среднемесячную температуру
*макс и мин температуру
*количество дней с температурой ниже 0
*самую холодную декаду месяца
2) Дан массив размера A[n],найти элементы последовательности, наиболее близкого к максимальному в последовательности. Преобразовать исходную последовательность поменять местами макс и найденным элементом
3)Дан одномерный массив. Определить наибольшее количество последовательно расположенных положительных чисел
Задание 2
Определить число которое имеет минимально 15 делителей в промежутке от 10-1000
Задание 1
1 )
Листинг программы
program nnm;
uses crt;
var i,j,b,n,max,min,k:integer;
a,b1:array[1..100] of integer;
begin
clrscr; b:=0;n:=0;
for i:=1 to 30 do begin
a[i]:=random(30)-20; b:=b+a[i];
write(' ',a[i]) end;
writeln;
writeln('------------------------------' );
min:=a[1];max:=a[1];
for i:=1 to 30 do begin
if a[i]<min then min:=a[i];
if a[i]>max then max:=a[i];
end;
writeln;writeln('max:=',max,'min:=',min);
b1[j]:=0;k:=1;
for j:=1 to 3 do begin;
for i:=k to k+10 do begin b1[j]:=b1[j]+a[i];
k:=i; end ; writeln(b1[j],' ',k) ;
end;
min:=b1[1];
for j:=1 to 3 do if min>b1[j] then min:=b1[j];
writeln;writeln(min) ;
readkey;end.
Реализаия программы
2)
Листинг программы
program vdvadsshesti;
uses crt;
var i,max,min,n,j,k,b,s:integer;
a,b1:array[1..100] of integer;
label xx;
begin
clrscr;
read(n);
for i:=1 to n do begin read(a[i]);b1[i]:=a[i]; end; writeln;
writeln; max:=a[1];
for j:=1 to n do
for i:=1 to n-1 do if a[i]>a[i+1] then
begin b:=a[i];
a[i]:=a[i+1];
a[i+1]:=b;
end;
k:=n;
max:=a[k];
min:=a[k-1];
writeln('max:=',min,'max-1:=',max);
for i:=1 to n do
begin
if b1[i]=max then write(min,' ') else
if b1[i]=min then write(max,' ') else write(b1[i],' ') ;
end;
readkey;
end.
Реализация программы
33)
Листинг программы
program kak;
uses crt;
var i,j,n,m,k,s:integer;
min,max,c:real;
a,b:array [1..100] of integer;
label xx,xx1,xx2;
begin
clrscr;randomize;
read(s);
for i:=1 to s do begin
a[i]:=random(100)-50;
write(i,':=',a[i],' '); end;
writeln;
n:=1; k:=0;
for j:=1 to s do if a[n]>0 then
while a[n]>0 do begin k:=k+1;b[n]:=k; n:=n+1;end;
else
begin
n:=n+1;k:=0;
end;
max:=b[1];
for i:=2 to s do if b[i]>max then max:=b[i+1];
writeln('max:=',max:3:0);
readkey;
end.