Hallo,
ich habe das heute mal im buch gefunden!!! ich habe endlich
die richtige stelle von dem *Operator gefunden.
Der „*=“ Operator ist eine Abkürzung für „assignment by multiplication“: Nimm den aktuellen Inhalt des linken Operanden, multipliziere mit dem rechten Operanden und überschreibe mit dem Ergebnis den Inhalt des linken Operanden.
a \*= b;
ist identisch mit
a = a \* b;
Es gibt analog /=, += und -=.
Worauf ich mit meiner zweiten Frage hinaus wollte: Wie groß sind auf Deinem Rechner die „signed int“ und was passiert, wenn das Ergebnis zu einem Überlauf führt? Das kann bei „Fakultät“ recht schnell passieren.
Entweder, du begrenzt die Größen bei der Eingabe, oder aber Du prüfst, ob es zu einem Überlauf gekommen ist und gibst nen Fehler aus.
Andernfalls können die Ergebnisse beliebig falsch sein und damit das Programm wertlos!
Gruß
Fritze