Есть ответ 👍

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

249
470
Посмотреть ответы 2

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

dinnaasv
4,5(10 оценок)

// pascalabc.net 3.4.2, сборка 1785 от 06.09.2018

// внимание! если программа не работает, обновите версию!

begin

  var (n, i) : = (readinteger('n ='), 9);

  var st : = new stack< integer> ;

  if n = 1 then st.push(1)

  else

  if n < = 0 then

  begin

    println('требуется натуральное число');

    exit

  end;

  while (i > 1) and (n < > 1) do

    if n mod i = 0 then

    begin

      st.push(i);

      n : = n div i

    end

    else i -= 1;

  print('m =');

  if n > 1 then print('0')

  else st.println('')

end.

пример

n = 420

m = 2567

cera2
4,5(16 оценок)

а б в г

Популярно: Информатика