Я понимаю, что это классическая проблема программирования, и поэтому я хочу пояснить, что не ищу код в качестве решения, но был бы признателен за продвижение в правильном направлении.Я изучаю C ++ и в процессе обучения пытаюсь решить некоторые проблемы программирования.Я пытаюсь написать программу, которая работает с числами до факториала в 1 миллиард.Очевидно, что они будут огромными числами и слишком большими, чтобы иметь дело с использованием обычных арифметических операций.Будем благодарны за любые указания относительно того, в каком направлении мне следует попытаться решить проблему такого типа.
Я бы лучше попытался решить эту проблему без использования дополнительных библиотек, если это возможно
Спасибо
PS - проблема здесь http://www.codechef.com/problems/FCTRL
Вот метод, который я использовал для решения проблемы, это было достигнуто путем чтения комментариев ниже:
Решение -Число 5 - это главный фактор любого числа, оканчивающегося на ноль.Поэтому, рекурсивно разделив факториальное число на 5 и добавив частное, вы получите число конечных нулей в факториальном результате
EG - Количество конечных нулей в 126!= 31
126/5 = 25 остатков 1
25/5 = 5 остатков 0
5/5 = 1 остаток 0
25 + 5+ 1 = 31
Это работает для любого значения, просто продолжайте деление, пока частное не станет меньше 5