Напишите программу, которая по введённому натуральному числу N (N≤500) выдаёт наименьшее число M, произведение цифр которого (в десятичной записи) равно N или 0, если такого M не существует. (Pascal)

27 Сен 2019 в 15:40
233 +1
1
Ответы
1

program SmallestMultiple;

var
N, i, j, product: Integer;
digit, minNumber: Integer;
flag: Boolean;

begin
Write('Введите натуральное число N: ');
Readln(N);

minNumber := 0;
flag := False;

for i := 10 to 9999 do
begin
product := 1;
j := i;

while j > 0 do
begin
digit := j mod 10;
product := product * digit;
j := j div 10;
end;
if product = N then
begin
minNumber := i;
flag := True;
break;
end;

end;

if flag then
WriteLn('Наименьшее число M: ', minNumber)
else
WriteLn(0);
end.

19 Апр 2024 в 19:13
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир