Подсчитать произведения и количество целых чисел - Pascal
Формулировка задачи:
Помогите пожалуйста
Дана последовательность чисел a1 (i=1,2,... ,N).Подсчитать произведения и количество целых чисел , вывести их значения и порядковые номера.
Решение задачи: «Подсчитать произведения и количество целых чисел»
textual
Листинг программы
var a:array[1..50] of real; n,i,k:byte; p:real; begin write('Введите размер массива от 1 до 50 n='); readln(n); writeln('Введите элементы массива, действительные, в том числе и целые числа'); k:=0; p:=1; for i:=1 to n do begin write('a[',i,']='); readln(a[i]); if frac(a[i])=0 then begin k:=1; p:=p*a[i]; end; end; if k=0 then write('В последовательности нет целых чисел') else write('Произведение целых чисел=',p:0:0); end.
Объяснение кода листинга программы
- Объявляется массив
a
размерности 50, содержащий действительные числа. - Объявляются переменные
n
,i
иk
как байты, и переменнаяp
как действительное число. - Пользователю предлагается ввести размер массива
n
от 1 до 50. - Пользователю предлагается ввести элементы массива
a
. - Устанавливаются начальные значения переменных
k
(0) иp
(1). - Происходит цикл от 1 до
n
, в котором пользователю предлагается ввести элемент массиваa[i]
, и проверяется, является ли он целым числом (проверка производится по дробной части числа с помощью функцииfrac(a[i])
и сравнению с 0). - Если элемент массива
a[i]
является целым числом, то переменнаяk
устанавливается в 1, и произведениеp
умножается на это число. - Проверяется, было ли найдено хотя бы одно целое число в массиве.
- Если переменная
k
равна 0, выводится сообщениеВ последовательности нет целых чисел
. - В противном случае выводится сообщение с произведением целых чисел (значением переменной
p
) с округлением до целого числа.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д