Задачка для шестикласника
04-09-2006 15:35
к комментариям - к полной версии
- понравилось!
из нашего толка:
Помогите решить задачку за 6-й класс средней школы.
Следует учесть, что дети не знают кв. корня, степени, и т.д.
Задача: на сколько нулей оканчивается факториал 100 и 50?
И как объяснить ребенку решение.
----------------------------
0 на конце дает только произведение числа и 10 или четного числа и 5.
Чисел полных десятков до 50 - 5 (10, 20, 30, 40, 50), на 5 заканчивается
также 5 чисел (5, 15, 25, 35, 45). Т.е 10 нулей на конце.
Для 100 - 11 нулей от 10ков (9 нулей от десятков плюс два нуля от
сотни), чисел, заканчивающихся на 5 - 10. Т.е 21 нуль на конце.
----------------------------
А почему позицию числа во внимание не берём?
Например:
100*4 = 400 (100 дало два нуля), но
25*4 = 100 (4 дала два нуля, или 25 дало два нуля)
Таким образом надо для текущего умножения знать ещё и историю вычислений
----------------------------
Ну писали ведь уже реальный результат (практика - критерий истины!)
93326215443944200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
30414093201713400000000000000000000000000000000000000000000000000
Когда можно проверить практически (в Excel, например), то зачем строить
доморощенные (без практики) теории?!
------------------------------------
хе-хе... А что это у вас на 16 байте всё округлилось в нуль???
Я останусь верным своему алгоритму (12 и 24 нуля соответственно), ибо: он
не округляет ничего
------------------------------------
Да, ошибся.
А вообще все будет еще проще, если вспомнить про разложение на простые множители. После этого разложения все пары 5*2 выносим отдельно - число таких пар даст количество нулей. Очевидно, что 2-ек будет больше, чем 5-ок, поэтому количество нулей определится количеством вхождений 5-ки в разложение (отсюда "2 ноля" у 25, 50 и 75, и можно сказать что при подсчете 150! 125 даст 3 нуля и тп :) )
Таким образом, переписываем факториал, разлагая на множители те части, которые в разложении содержат 5-ку, получаем:
50! = 2*...*4*6*...*9*11*...*49*(1*5)*(2*5)*(3*5)*(4*5)*(5*5)...*(9*5)*(2*5*5) - всего 10+2=12 5-к.
Аналогично, для 100!=2*...*99*(1*5)*...*(5*5)*...*(2*5*5)*...*(3*5*5)*...*(19*5)*(5*5*4) - всего 20+4=24 пятерки.
Для школы такое объяснение вроде должно подойти тоже.
вверх^
к полной версии
понравилось!
в evernote