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

Написать программу, вычисляющую произведение цифр в сумме трех целых числа A,B И C.
Входной файл
В единственной строке файла содержатся три целых числа A,B И C, разделенных пробелами.
Выходной файл
Выходной файл содержит одно число - искомое произведение цифр.
Задачу решить на языке паскаль.


Аноним: Процедуры и функции изучали? Хотя, если изучали файлы, должны были...
schokk698: Это олимпиада. Плохо знаю паскаль. Прошу помощи.
Аноним: Если это олимпиада, то Вы нарушаете правила данного Сервиса. Думайте, что пишете.
TaTaPmember: Спалил контору)

Ответы

Автор ответа: Аноним
1
function ProdDig(n:longint):longint;
var
  p:longint;
begin
  p:=1;
  while n>0 do begin
    p:=p*(n mod 10);
    n:=n div 10
  end;
  ProdDig:=p
end;

var
  f:Text;
  a,b,c:longint;
begin
  Assign(f,'abc.txt');
  Reset(f);
  Readln(f,a,b,c);
  Close(f);
  Assign(f,'abcout.txt');
  Rewrite(f);
  Writeln(f,ProdDig(a+b+c));
  Close(f)
end.

Вариант без использования функции:
var
  f:Text;
  a,b,c,p,s:longint;
begin
  Assign(f,'abc.txt');
  Reset(f);
  Readln(f,a,b,c);
  Close(f);
  s:=a+b+c; p:=1;
  while s>0 do begin
    p:=p*(s mod 10);
    s:=s div 10
  end;
  Assign(f,'abcout.txt');
  Rewrite(f);
  Writeln(f,p);
  Close(f)
end.


schokk698: function ProdDig(n:longint):longint;
О чем говорит эта строка?
Аноним: Это заголовок функции, которая получает на вход число и возвращает произведение его цифр. Как SQRT(x) - получает аргумент х и возвращает результатом квадратный корень из него.
Аноним: Имя выбрал от английских слов Production of Digits - произведение цифр.
Аноним: Только SQRT - это внутренняя функция Паскаля, а эту я сам написал
schokk698: Понял. Спасибо
Похожие вопросы
Предмет: Английский язык, автор: ylitochka2005
Предмет: Геометрия, автор: artur020205