Var ar1:array of real;ar2:array of real; n,i,maxi1,maxi2,seed:integer; max1,max2:real;
function gener(var ar:array of real;i:integer; var seed:integer):real; begin; randomize(seed); {В этой задаче я впервые столкнулся с неслучайным random(). Чтобы она генерировала новый ряд чисел, измените значение seed в начале основной программы} seed:=random(-10,10); ar[i]:=random(-10,10); gener:=ar[i]; end;
procedure maxS(ar:array of real;var maxi,n:integer; var max:real); var i:integer; begin; max:=-2147483648; for i:=1 to n do if max<ar[i] then begin; max:=ar[i]; maxi:=i; end; for i:=maxi+1 to n do ar[i]:=0.5; end;
begin; randomize; readln(n); setlength(ar1,n+1); setlength(ar2,n+1); writeln('Array A:'); for i:=1 to n do write(gener(ar1,i,seed):4); seed:=random(-10,10); writeln; writeln('Array B:'); for i:=1 to n do write(gener(ar2,i,seed):4); maxS(ar1,maxi1,n,max1); maxS(ar2,maxi2,n,max2); writeln; writeln('Final array A:'); for i:=1 to n do write(ar1[i]:4); writeln; writeln('Final array B:'); for i:=1 to n do write(ar2[i]:4); end.
fomindmity1
05.05.2023
//Визуально разделил циклы, чтобы было более читаемо
var ar:array[1..10] of integer; max,i:integer; begin; randomize; //чтобы random() работал как надо writeln('Array');
for i:=1 to 10 do begin; ar[i]:=random(-10,10); //случайное число от -10 до 10 write(ar[i]:4); end;
for i:=1 to 10 do //"проходим" через весь массив if (ar[i]<0) and (max<abs(ar[i])) then max:=abs(ar[i]); {если элемент массива меньше нуля и его модуль больше максимума тогда записать модуль этого числа в максимум}
writeln; writeln('Max:-',max); //выводим на всякий случай максимум
writeln('Final array:'); for i:=1 to 10 do //снова проходим по всему массиву begin; if ar[i]=-max then ar[i]:=0; {если элемент равен отрицательному максимуму(мы брали модуль) присвоить ему 0} write(ar[i]:4); end; end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Напишите программу. даденое число х. когда число чётное, то нарисовать на экране зелёный прямоугольник, а когда не чётное, то красный круг
n,i,maxi1,maxi2,seed:integer;
max1,max2:real;
function gener(var ar:array of real;i:integer; var seed:integer):real;
begin;
randomize(seed);
{В этой задаче я впервые столкнулся с неслучайным random(). Чтобы она генерировала новый ряд чисел, измените значение seed в начале основной программы}
seed:=random(-10,10);
ar[i]:=random(-10,10);
gener:=ar[i];
end;
procedure maxS(ar:array of real;var maxi,n:integer; var max:real);
var i:integer;
begin;
max:=-2147483648;
for i:=1 to n do if max<ar[i] then
begin;
max:=ar[i];
maxi:=i;
end;
for i:=maxi+1 to n do
ar[i]:=0.5;
end;
begin;
randomize;
readln(n);
setlength(ar1,n+1);
setlength(ar2,n+1);
writeln('Array A:');
for i:=1 to n do
write(gener(ar1,i,seed):4);
seed:=random(-10,10);
writeln;
writeln('Array B:');
for i:=1 to n do
write(gener(ar2,i,seed):4);
maxS(ar1,maxi1,n,max1);
maxS(ar2,maxi2,n,max2);
writeln;
writeln('Final array A:');
for i:=1 to n do
write(ar1[i]:4);
writeln;
writeln('Final array B:');
for i:=1 to n do
write(ar2[i]:4);
end.