Предмет: Информатика, автор: ladohij107

В числовую переменную последовательно вводятся произвольные числа не равные нулю.Количество вводимых чисел заранее неизвестно.Требуется вычислить и напечатать сумму и количество чисел кратных 3 и 5

Нужно решить на Паскале


valgrisa: 0 будет признаком окончания ввода?

Ответы

Автор ответа: rar24
0

Ответ:

Для написания программы используем цикл for, конструкцию ветвления if и оператор остатка от деления - mod

Объяснение:

var

 // n - количество вводимых чисел

 // count - счётчик чисел

 // numb - переменная для вводимого числа

 // sum - сумма чисел

 n, count, numb, sum: integer;

begin

 // Выводим просьбу на экран

 write('Количество вводимых чисел: ');

 // Запрашиваем ввод количества чисел с клавиатуры

 readln(n);

 // Повторяем (итерируем) цикл n раз

 for var i := 1 to n do

 begin

   // Запрашиваем ввод числа с клавиатуры

   readln(numb);

   // Проверяем, верно ли условие, что число делится без остатка на 3 и 5 (кратно 3ем и 5и)

   if ((numb mod 3 = 0) and (numb mod 5 = 0)) then

   begin

     // Добавляем число к сумме

     sum := sum + numb;

     // Увеличиваем значение счётчика

     count := count + 1;

   end;

 end;

 // Выводим результат работы программы

 writeln('Сумма и количество чисел кратных 3 и 5: ', sum, ' и ', count);

end.


ladohij107: Тут ошибка, паскаль выводит это (Нельзя преобразовать тип real к integer)
rar24: да, нельзя брать остаток от вещественных чисел, исправил)
Похожие вопросы
Предмет: Қазақ тiлi, автор: klgi
Предмет: Математика, автор: kiryaartomonov