Matheformel um die letzten zwei Stellen einer Zahl herausbekommen?

4 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

modulo vielleicht?

int a = 2022;
int b = a % 100;
printf("%d %d\n",a,b);

das geht auf Restklassen an der Uni zurück... oder eben auf das „Teilen mit Rest“ in der Grundschule...

Woher ich das weiß:Studium / Ausbildung

Mit dem %-Operator erhält man den Rest bei Division.

Beispielsweise liefert 2022 % 100 den Rest bei Division von 2022 durch 100, was 22 ist. Allgemein erhält man für eine natürliche Zahl n mit n % 100 die letzten zwei Ziffern der Zahl n.

Beispiel:

YYYY = 2022
YY = YYYY % 100
# In YY ist nun die Zahl 22 gespeichert.

Modulo (%) wie hier angegeben ist die beste Lösung.

Sonst aus 2022 die 20 durch 2022 / 100 bestimmen und in einer Int-Variablen speichern. Dann fallen die Nachkommastellen weg.

So hast du den Wert 20 und nicht 20,22.

2022 - 100 • 20 = 22

Ganzzahlig durch 100 dividieren, der Rest sind die letzten beiden Stellen. Gibt eigentlich in jeder höheren Programmiersprache eine Funktion dafür, nennt sich meist modulo. In manchen Programmiersprachen gibt es auch einen Operator dafür.

Beispiel Java:

9 % 2

Das Ergebnis ist 1.