Вводится n, необходимо найти,на сколько нулей оканчивается n! (факториал) - Free Pascal

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

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

Здравствуйте,подскажите а лучше покажите как можно найти количество нулей в числе,не в том что вводит пользователь,а то которое вычисляется.Вот что у меня получилось...

var n,i:integer;

n - вводимое пользователем число,i - каждое число от 1 до n.

f:extented;

f - получившийся факториал.

begin

n:=strtoint(form1.edit1.text);

считывание n

f:=1;

не знаю почему,но если заменить на 0(как должно быть),то выдает ошибку

for i:=2 to n do

смысла начать с единицы нет

f:=f*i;

чтобы получить ответ делаю так. ну и вывод на экран.Не знаю,может кто сможет сделать правильно или поправить,буду благодарен.

Решение задачи: «Вводится n, необходимо найти,на сколько нулей оканчивается n! (факториал)»

textual
Листинг программы
k := 0;
while n > 0 do
begin
  n := n div 5;
  k = k + n;
end

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

  1. k - счетчик количества раз, когда n делится на 5 без остатка
  2. n - число, для которого необходимо найти количество нулей в конце факториала
  3. n! - факториал числа n (выражение не представлено в данном коде)
  4. k := 0 - инициализация счетчика
  5. while n > 0 do - цикл, который будет выполняться, пока n больше 0
  6. n := n div 5 - деление n на 5 и присваивание результата переменной n
  7. k = k + n - увеличение значения счетчика на значение переменной n
  8. end - завершение цикла

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


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

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

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