1.
var a:array [1..10] of integer;
i,k:integer;
begin
k:=0;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(100);
write(a[i]:4);
if a[i] mod 2 = 1 then k:=k+1
end;
writeln;
if k>0 then writeln ('Количество нечетных чисел равно ',k)
else writeln ('Нечетных чисел нет')
end.
2.
var a:array [1..10] of integer;
i,m:integer;
begin
m:=99;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(100);
write(a[i]:4);
if a[i] < m then m:=a[i]
end;
writeln;
writeln ('min = ',m)
end.
Объяснение:
var a:array [1..10] of integer;
i,k,m:integer;
begin
k:=0;
m:=99;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(100);
write(a[i]:4);
if a[i] mod 2 = 1 then k:=k+1;
if a[i] < m then m:=a[i]
end;
writeln;
if k>0 then writeln ('Количество нечетных чисел равно ',k)
else writeln ('Нечетных чисел нет');
writeln ('min = ',m)
end.
Некоторые языки программирования это допускают, но правила разработки алгоритмов строго запрещают такие манипуляции, потому что нарушаются каноны современного программирования. В связи с этим большинство языков прямо запрещают модификацию параметра цикла в теле цикла.
Если нужно конкретно - в Pascal и Fortran оператор цикла с пратметром строгий, запрещающий менять значение параметра в теле цикла. Обнаруживается при компиляции, запустить на выполнение нельзя. В языках cемейства С оператор for нестрогий, цикл с параметром там моделируется и компилятор не отслеживает модификацию параметра цикла в теле цикла. В бейсиках также можно модифицировать параметр цикла в теле цикла.
Код программы к 16:
var x, y:real;
begin
x:=2;
y := (x+3*cos(sqr(x)+1.5))/(tan(x)+4.56)+sin(2*x)+cos(sqr(x)+5);
writeln(y);
end.
Код программы к 1:
var x, y, z, t:real;
begin
x:=14.26;
y:=-1.22;
z:=0.035;
t:=(2*cos(x-pi/6))/(0.5+power(sin(y), 2))*(1+sqr(z)/(3-sqr(z)/5));
writeln(t);
end.