М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации

Напишите программу. даденое число х. когда число чётное, то нарисовать на экране зелёный прямоугольник, а когда не чётное, то красный круг

👇
Открыть все ответы
Ответ:
Mashannjjj
Mashannjjj
05.05.2023
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.
4,5(56 оценок)
Ответ:
ПавелКрут
ПавелКрут
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.
4,4(35 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ