Сначала банальный код - рабочий, но уже на больших числах будет переполнение переменной факториала. 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.
Клод Шеннон - основатель теории информации в первую очередь. Прожил достаточно долгую плодотворную жизнь(1916 - 2001). Как учёный этот американский математик приложил свои руки и в инженерии, кибернетики, электротехнике, математике и теории информации. Мировую известность ему принесли разработки теории связи кодирования. Отец первой промышленной радиоуправляемой игрушки и первым ввёл понятие "бит" - как информационной единицы измерения. За свои неоценимые заслуги в революционных разработках отмечен многими наградами и премиями, в том числе и Нобелевской премией.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку