N- factorial - это произведение всех чисел от 1 до n. для заданного числа n определите, сколько нулей в конце десятичной записи n - factorial

taibovakari taibovakari    2   28.05.2019 22:40    0

Ответы
orxan4176 orxan4176  26.06.2020 18:05
Нужно посчитать количество 5 в разложении. Причем нужно учесть, что 
25 = 5*5 - это две 5, а 125 = 5*5*5 - это три 5, и так далее.
BEGIN
k := 0;
for i=1 to N do
begin
    a := i;
    while a > 0 do
    begin
        if a mod 5 = 0 then
        begin
            k := k+1; 
            a := a/5;
        end;
        else a := 0;
    end;
end;
writeln (k);
END.
Проверь. 25! должен заканчиваться 6 нулями.
ПОКАЗАТЬ ОТВЕТЫ
agasan420 agasan420  26.06.2020 18:05
#include<iostream>using namespace std;int main(){    int a,q=0,b=1,r;    cin>>a;    for(int i=1;i<=a;i++)    b*=i;    r=b;     while(r!=0)    {if(r%10==0) q++;    else {cout<<q;break;}    r=r/10;}    return 0;}
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика