Исаченко Тераски1181
?>

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

Информатика

Ответы

Тинчурина1528
Сначала банальный код - рабочий, но уже  на больших числах будет переполнение переменной факториала. var n, i, fact, ans : integer; begin   read(n);   fact : = 1;   for i : = 2 to n do     fact : = fact * i;   while (fact mod 10 = 0) do begin     ans : = ans + 1;       fact : = fact div 10;   end;   writeln(ans); end.теперь более "умный" код, в нём использован тот факт, что простое число p входит в разложение факториала  числа n = [n/p] + [n/p^2] + [n/p^3] + где [x] - целая часть числа x.var n, i, fact, c, pow, ans : integer; {c  - сколько раз входит в разложение числа n! цифра  5}begin  read(n);   pow : = 5;   while (pow < = n) do begin    c += n div pow;     pow : = pow * 5;   end;   writeln(c); end.
orgot9
Обратим внимание, что при возведении натурального числа a в натуральную степень n последняя цифра результата определяется, как значение последней цифры d числа a, возведенного в степень n поскольку операция возведения в степень n сводится к умножению n раз числа самого на себя, то получая при очередном умножении многоразрядное число, мы можем снова принимать в расчет только его младшую цифру. это позволяет построить цикл на n умножений, каждый раз получая младшую цифру при операции mod. var   a: longint;   n,d,i,p: integer; begin   write('введите натуральное число a: '); read(a);   write('введите натуральную степень n: '); read(n);   a: =a mod 10; p: =a;   for i: =2 to n do       begin a: =a*p; a: =a mod 10 end;   writeln('последняя цифра равна ',a) end. тестовое решение: введите натуральное число a: 154 введите натуральную степень n: 9 последняя цифра равна 4
petrowich076813
2. 52 div 8 = 6 целое 2+6=8 целое √8≈2.828 вещественное trunc(2.828)=2 целое 15 mod 4=3 целое 3/3=1 целое 2-1=1 целое ответ: 1, тип целое 3. максимальное значение integer в языке паскаль зависит от реализации. стандарт языка определяет, что под переменную типа integer необходимо отвести объем памяти, достаточный для хранения значения 32767, т.е. в связи с этим в ранних реализациях паскаля под переменные типа integer отводилось 2 байта памяти. в современных реализациях под переменные этого типа отводится 4 байта, поэтому максимальное значение integer может достигать или 2147483647.4. если надо сохранить целое число, большее в 10 раз максимального значения integer, то нужно для поинтересоваться а) сколько байт отводится под integer? б) есть ли в данной реализации паскаля целые числа, под хранение которых отводится большее число байт? когда integer двухбайтовое, следует использовать четырехбайтное longint, а когда четырехбайтное - поинтересоваться наличием восьмибайтного типа int64.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

N-factorial это произведение всех чисел от 1 до n. для задного числа n определите сколько нулей в конце десятичной записи n-factorial . в единственной строке входного файла содержится одно целое положительное числа nn(1
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Freelifecool797
Litvin_Ivanov
zatoichi69
pavtrusov
jaksonj326
Терентьева
Девяткина_Арсений
tboychenko
Коробкова1437
dmitzu8594
Анатольевич-Митюшин
Negutsa_Kseniya524
Виктория1690
ekaizer
katya860531