Даны четыре натуральных числа. Вывести на экран то из них, сумма цифр которого – наибольшая - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

составить программу 2 способами: 1) с использование процедур 2) с использованием функций

Решение задачи: «Даны четыре натуральных числа. Вывести на экран то из них, сумма цифр которого – наибольшая»

textual
Листинг программы
procedure summa(n:integer;var s:integer);
var m:integer;
begin
m:=n;
s:=0;
while m>0 do
 begin
  s:=s+m mod 10;
  m:=m div 10;
 end;
writeln('Сумма цифр числа ',n,'=',s);
end;
procedure max(a,b,c,d,sa,sb,sc,sd:integer;var n:integer);
var mx:integer;
begin
if sa>sb then
 begin
  mx:=sa;
  n:=a;
 end
else
 begin
  mx:=sb;
  n:=b;
 end;
if sc>mx then
 begin
  mx:=sc;
  n:=c;
 end;
if sd>mx then
 begin
  mx:=sd;
  n:=d;
 end;
writeln('Наибольшая сумма цифр в числе ',n);
end;
var a,b,c,d,sa,sb,sc,sd,n:integer;
begin
writeln('Введите 4 натуральных числа');
readln(a,b,c,d);
summa(a,sa);
summa(b,sb);
summa(c,sc);
summa(d,sd);
max(a,b,c,d,sa,sb,sc,sd,n);
end.

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

Данный код написан на языке Pascal ABC и выполняет следующие действия:

  1. Создает процедуры summa и max, которые будут использоваться для решения задачи.
  2. Объявляет переменные n, s, m, a, b, c, d, sa, sb, sc, sd, которые будут использоваться для хранения введенных чисел и их сумм цифр.
  3. Запрашивает у пользователя ввод четырех натуральных чисел и сохраняет их в переменные a, b, c и d.
  4. Вычисляет сумму цифр каждого из введенных чисел с помощью процедуры summa и сохраняет результаты в соответствующие переменные sa, sb, sc и sd.
  5. Вычисляет наибольшую сумму цифр из всех введенных чисел с помощью процедуры max и выводит результат на экран.
  6. Завершает работу программы. Данный код решает поставленную задачу, но не использует вложенные списки.

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


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

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

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