Подсчитать произведения и количество целых чисел - 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.

Объяснение кода листинга программы

  1. Объявляется массив a размерности 50, содержащий действительные числа.
  2. Объявляются переменные n, i и k как байты, и переменная p как действительное число.
  3. Пользователю предлагается ввести размер массива n от 1 до 50.
  4. Пользователю предлагается ввести элементы массива a.
  5. Устанавливаются начальные значения переменных k (0) и p (1).
  6. Происходит цикл от 1 до n, в котором пользователю предлагается ввести элемент массива a[i], и проверяется, является ли он целым числом (проверка производится по дробной части числа с помощью функции frac(a[i]) и сравнению с 0).
  7. Если элемент массива a[i] является целым числом, то переменная k устанавливается в 1, и произведение p умножается на это число.
  8. Проверяется, было ли найдено хотя бы одно целое число в массиве.
  9. Если переменная k равна 0, выводится сообщение В последовательности нет целых чисел.
  10. В противном случае выводится сообщение с произведением целых чисел (значением переменной p) с округлением до целого числа.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы