Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#16

Re: Personalausweisnummer generieren

  Alt 23. Jul 2007, 23:26
Zitat von MaBuSE:
... i mod 3 ...
Falls Du nicht weißt was mod macht. hier eine kleine Erklärung:
Bei dem Datentyp Integer gibt es ja keine Nachkommastellen, es sind ja "nur" die ganzen Zahlen.
Wenn man jetzt Dividieren (durch x teilen) möchte, gibt es ein Ergebis der Division und den Rest.

Beisp:
  • 0 geteilt durch 3 ist 0 mit dem Rest 0 (0 mal 3 plus 0 = 0)
    1 geteilt durch 3 ist 0 mit dem Rest 1 (0 mal 3 plus 1 = 1)
    2 geteilt durch 3 ist 0 mit dem Rest 2 (0 mal 3 plus 2 = 2)
    3 geteilt durch 3 ist 1 mit dem Rest 0 (1 mal 3 plus 0 = 3)
    4 geteilt durch 3 ist 1 mit dem Rest 1 (1 mal 3 plus 1 = 4)
    5 geteilt durch 3 ist 1 mit dem Rest 2 (1 mal 3 plus 2 = 5)
    6 geteilt durch 3 ist 2 mit dem Rest 0 (2 mal 3 plus 0 = 6)
    7 geteilt durch 3 ist 2 mit dem Rest 1 (2 mal 3 plus 1 = 7)
    ...
In Delphi sieht das dann so aus:
Delphi-Quellcode:
...
var
  Ergebnis: Integer;
  Rest: integer;
begin
  Ergebnis := 5 div 3; // Ergebnis ist nun 1
  Rest := 5 mod 3; // Rest ist nun 2
end;
...
So einfach ist das.

Die letzte Ziffer einer Zahl bekommt man mit:
Delphi-Quellcode:
...
  letzteZiffer := Zahl mod 10;
...
Wenn Du eine Zahl durch 10 teilst ist der Rest immer die letzte Ziffer.

Ich hoffe das hilft Dir.
Gute Nacht
MaBuSE
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat