Pascal ABC Напишите полностью пожалуйста ответ!
Найти произведение элементов массива целых чисел, которые кратны 7. Размерность массива – 15. Заполнение массива осуществить случайными числами.

Ответы

Ответ дал: vimmortal2
0

Программа:

Pascal:

var

 arr: array[1..15] of integer;

 proiz, i: integer;

begin

 randomize;

 proiz := 1;

 for i := 1 to 15 do begin

   arr[i] := random(-100, 100);

   

   if arr[i] mod 7 = 0 then

     proiz *= arr[i];

 end;

 writeln(arr, #10, proiz);

end.

Объяснение:

В начале выделяется память под массив из 15 элементов, регистрируются переменные proiz и i. Далее начинается основной код. Переменной proiz присваивается значение 1, чтобы потом бессмысленно не умножать на 0. С помощью цикла for переменная i пробегается по всем целым числам от 1 до 15. Элементу массива с индексом i присваивается рандомное значение от -100 до 100. Если остаток от деления числа на 7 равен нулю (значит число кратно 7), то значение переменной proiz изменяется на элемент массива с индексом i. В конце - вывод массива и произведения элементов.

Результат:

[-21,88,75,64,-1,-49,-93,-43,-44,-63,37,27,-28,91,-33]

165179196

[-73,-6,72,15,-57,-53,-59,-62,-60,-56,-40,50,-99,21,-71]

-1176


MrSolution: У Вас не инициализирован датчик псевдослучайных чисел. Используйте процедуру randomize для этого. Или пишите на синтаксисе PascalABC.NET, как в ответе ниже.
lozas3169: Ошибка: ожидалось описание или begin
Ответ дал: MrSolution
0

Программа:

##

ArrRandom(15, ReadInteger('Нижняя граница:'), ReadInteger('Верхняя граница')).Where(x->x mod 7 = 0).Aggregate(1,(p,x) -> p*x).Print;

Пример работы:

Нижняя граница: 1

Верхняя граница 100

432180


lozas3169: Ошибка: ожидалось описание или begin
lozas3169: У меня то что с сайта работает у вас не рабочие какие то вот что я нашёл
lozas3169: var
a: array[1..15] of integer;
i: integer;
av: integer;

begin
randomize;
for i := 1 to 15 do a[i] := random(40) + 10;
writeln('Исходный массив: ');
for i := 1 to 15 do write(a[i], ' ');
writeln;
av := 1;
for i := 1 to 15 do
if a[i] mod 7 = 0 then av := av * a[i];
if av = 1 then writeln('Массив не содержит элементов , которые кратны 7!')
else writeln('Произведение равно: ', av);
end.
lozas3169: У вас такое написание это точно 9 класс?
Вас заинтересует