Berechnung großer Fakultäten in C ++

Ich verstehe, dass dies ein klassisches Programmierproblem ist und daher möchte ich klarstellen, dass ich nicht nach Code als Lösung suche, sondern einen Push in die richtige Richtung begrüße. Ich lerne C ++ und als Teil des Lernprozesses versuche ich einige Programmierprobleme. Ich versuche, ein Programm zu schreiben, das sich mit Zahlen bis zu einer Fakultät von 1 Milliarde befasst. Offensichtlich sind diese Zahlen enorm und viel zu groß, um mit normalen arithmetischen Operationen fertig zu werden. Jeder Hinweis darauf, in welche Richtung ich gehen sollte, um zu versuchen, diese Art von Problem zu lösen, wäre willkommen.

Ich würde lieber versuchen, dies zu lösen, ohne zusätzliche Bibliotheken zu verwenden, wenn dies möglich ist

Vielen Dank

PS - das Problem ist hierhttp://www.codechef.com/problems/FCTRL

Hier ist die Methode, mit der ich das Problem gelöst habe. Dies wurde durch Lesen der folgenden Kommentare erreicht:

Lösung - Die Zahl 5 ist ein Primfaktor für jede Zahl, die auf Null endet. Wenn Sie die Fakultätszahl rekursiv durch 5 dividieren und die Quotienten addieren, erhalten Sie daher die Anzahl der nachgestellten Nullen im Fakultätsergebnis

Z.B. - Anzahl der nachgestellten Nullen in 126! = 31

126/5 = 25 Rest 1

25/5 = 5 Rest 0

5/5 = 1 Rest 0

25 + 5 + 1 = 31

Dies funktioniert für jeden Wert. Teilen Sie einfach so lange, bis der Quotient kleiner als 5 ist

Antworten auf die Frage(10)

Ihre Antwort auf die Frage