Предмет: Информатика,
автор: krisssssppv
Дан массив из 50 элементов,значения которых формируются функцией random и лежат в диапазоне от -10 до 32 включительно.Необходимо вывести сумму четных чисел массива и произведение нечетных чисел массива
В ПАСКАЛЕ ПОЖАЛУЙСТА.РАДИ БОГА!!!
Ответы
Автор ответа:
1
begin
var a:=ArrRandom(50,-10,32);
var pr:=1;
('Сумма', a.Where(x-> x.IsEven).Sum , 'Произведение', a.Where(x-> x.IsOdd).Product).Println;
end.
MrSolution:
isEven() или if(a[i] mod 2 = 0) - проверка на четность и да, зачем 2 цикла для поиска суммы и произведения?
и еще: Дан массив из 50 элементов, а у вас n=10
Odd - возвращает true если значение не четно, логично что если будет not odd то будет возвращать true если оно четно
С циклами да, перемудрил)
Еще вы создали массив из 50-ти элементов, но используете n=10!
n=50 в const пишите
Плюс ко всему, вдумайтесь. У вас все элементы массива целые. Зачем сумму и произведение делать вещественными?
Нерациональное использование типов данных
В общем, вы сильно перемудрили) Исправляйте
Исправил)
Автор ответа:
1
Ответ:
(см. объяснение)
Объяснение:
Вот код рабочей программы. Программа написана на языке PascalABC.NET версии 3.2, сборка 1325.
P.s: В PascalABC.NET допустимо объявление переменных в теле программы и сразу же их инициализация. В коде ошибок нет. Программа проверена и работает успешно.
begin
var sum: integer := 0;
var pr: integer := 1;
var a:= ArrRandom(50, -10, 32);
foreach x: integer in a
do begin
if(x.isEven()) then sum+= x
else pr*= x;
end;
writeln('Сумма четных элементов массива: ', sum);
writeln('Произведение нечетных элементов массива: ', pr);
end.
СПАСИБО ОГРОМНОЕ
var
a:array[1..50]of integer;
i:byte;
s,p:real;
begin
s:=0;
p:=1;
for i:=1 to 50 do
a[i]:=random(43)-10;
for i:=1 to 50 do
if i mod 2 <> 0 then
p:=p*a[i]
else
s:=s+a[i];
writeln('s=',s:6);
writeln('p=',p:6);
end.
a:array[1..50]of integer;
i:byte;
s,p:real;
begin
s:=0;
p:=1;
for i:=1 to 50 do
a[i]:=random(43)-10;
for i:=1 to 50 do
if i mod 2 <> 0 then
p:=p*a[i]
else
s:=s+a[i];
writeln('s=',s:6);
writeln('p=',p:6);
end.
Похожие вопросы
Предмет: Українська література,
автор: Santyaho
Предмет: Русский язык,
автор: лиза986
Предмет: Українська література,
автор: shinkarenko
Предмет: Литература,
автор: sasna4
Предмет: Химия,
автор: kiminitodoke654