Предмет: Информатика,
автор: andreuandreev64824
В одномерном массиве С(15) определить произведение и количество элементов, которые равны 30
Ответы
Автор ответа:
0
Код (Pascal)
var
c: array[1..15] of integer;
i, k: integer;
pr: longint;
begin
for i:=1 to 15 do
read(c[i]);
pr:=1;
k:=0;
for i:=1 to 15 do
if c[i]=30 then
begin
pr:=pr*3;
k:=k+1;
end;
if k=0 then pr:=0;
write(pr);
for i := 1 to k do write(0);
writeln(' ', k);
end.
MaxikMK:
Вам следовало бы использовать LongInt, ведь 30 может быть много.
Прошу прощения - давно не писал на паскале - в чём разница? Тут в худшем случае нам могут дать 15 тридцаток, и тогда придётся длинную арифметику писать. Или присмотреться к питону)
Ваша программа допускает максимум 3 числа 30, их произведение, 30³ = 27000. Четвертое число 30 даст 30⁴ = 810000, а в интежер влазит только 32767.
Спасибо, учту. Надеюсь, отправят на доработку.
Похожие вопросы
Предмет: Музыка,
автор: isaevakira05
Предмет: Математика,
автор: sportyyyy
Предмет: Химия,
автор: valeria6339
Предмет: Геометрия,
автор: Лола68906
Предмет: Алгебра,
автор: kiska41