Задача №1.
1.Вычислить количество положительных элементов массива.
2.Вычислить сумму элементов массива, расположенных после последнего элемента равного 0.
3.Преобразовать массив т.о., чтобы сначала располагались элементы, которые меньше или равны 1, затем все остальные.
program zadacha1;
uses crt;
var
mas:array[1..10] of integer;
i,p,x,sum,k,j:integer;
begin
clrscr;
for i:=1 to 10 do
begin
writeln('vvedite ',i,'-i element massiva ->');
read(mas[i]);
end;
writeln('massiv=');
for i:=1 to 10 do
writeln(mas[i]:4);
p:=0;
for i:=1 to 10 do
begin
if mas[i]>0 then
p:=p+1;
end;
writeln('kol-vo elementov=',p);
for i:=10 downto 1 do
if mas[i]=0 then
begin
x:=i;
break;
end;
sum:=0;
for i:=x+1 to 10 do
sum:=sum+trunc(mas[i]);
writeln('summa= ',sum);
for i:=1 to 10 do
if mas[i]<=1 then
begin
k:=k+1;
x:=mas[i];
for j:=i downto k+1 do
mas[j]:=mas[j-1];
mas[k]:=x;
end;
writeln('perestanovka ');
for i:=1 to 10 do
write(mas[i]:5);
readkey;
end.
Задача №2.
1. № минимального элемента массива.
2. Сумма элементов массива, расп-х между 1м и 2м отрицательными элементами.
3. Преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых <= 5, а потом все остальные.
program zadacha2;
uses crt;
var
mas:array[1..10] of integer;
i,min,b,k,n,a,sum:integer;
begin
clrscr;
for i:=1 to 10 do
begin
writeln('vvedite ',i,'-i element massiva ->');
read(mas[i]);
end;
min:=1;
for i:=2 to 10 do
if mas[i] < mas[min] then
min:=i;
writeln('nomer minimalnogo elementa massiva = ' ,min);
for i:=1 to 10 do
if mas[i]<0 then
begin
a:=mas[i];
k:=i;
writeln('chislo= ',a,'nomer= ',k);
break;
end;
k:=i;
for i:=k+1 to 10 do
if mas[i]<0 then
begin
b:=mas[i];
n:=i;
writeln('chislo=',b,' nomer=',n);
break;
end;
sum:=0;
for i:=k+1 to n-1 do
sum:=sum+mas[i];
writeln('summa=',sum);
for i:=1 to 10 do
if abs(mas[i])<=5 then
write (mas[i], ' ');
for i:=1 to 10 do
if abs(mas[i])>5 then
write (mas[i], ' ');
readkey;
end.