Вопрос задан 27.12.2018 в 12:29. Предмет Информатика. Спрашивает Давронова Алла.

Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N — 1, у которых

произведение всех цифр совпадает с суммой цифр данного числа. Если таких чисел нет, то вывести слово "нет". Помогите пожалуйста написать программу в программе PascalABC.NET.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Русинский Евгений.
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

function SumD(k:integer):integer;
begin
  Result:=0;
  while k>0 do (Result,k):=(Result+k mod 10,k div 10)
end;

function Good(k,s:integer):boolean;
begin
  var p:=1;
  while k>0 do (p,k):=(p*(k mod 10),k div 10);
  Result:=p=s
end;

begin
  var n:=ReadInteger('n=');
  var s:=SumD(n);
  Range(1,n-1).Where(n->Good(n,s)).Println
end.

Пример
n= 44
8 18 24 42
0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос