![]() |
ISBN 10 / 13 Prüfen
Liste der Anhänge anzeigen (Anzahl: 1)
Guten Tag liebes Delphi Forum,
ich habe vor 3 Jahren mal Delphi und Turbo Pascal geschrieben... das ist leider schon lange her und ich hab fast alles vergessen. Ich bin nun in Berufsschule und muss ein Programm schreiben was: 1. ISBN 10 Prüfziffer berechnen ( erledigt ) 2. ISBN 10 Auf gültigkeit prüfen ( in bearbeitung ) 3. ISBN 13 Prüfziffer berechnen ( erledigt ) 4. ISBN 14 Auf gültigkeit prüfen ( in bearbeitung ) Brauche nun Hilfe diese Aufgabe zu erledigen. Im Anhang liegt mein bis jetz gemachtes Projekt. Bitte Anhang downloaden (FORM) um mein Problem zu verstehen da ich mit mehreren Edit Feldern arbeite...danke |
AW: ISBN 10 / 13 Prüfen
Hi,
ich sehe keinen Anhang ;) zu 2. Wann ist eine ISBN denn gültig? zu 3. Hast du schon die Berechnungsmethode mal auf nem Blatt Papier gemacht? zu 4. siehe 2 (unter der Annhame, dass du ISBN-13 meinst) LG, Frederic |
AW: ISBN 10 / 13 Prüfen
anhang jetz drinne hat gedauert der upload sry.
Ich weiß wie alles geht hab mich damit schon gut beschäftigt, nur weiß ich leider nicht wie ich den quell code einbinden / schreiben kann. Es gibt ja schon Quell-Texte hier nur sind das function und keine proceduren. Wie man was berechnet steht hier Perfekt drinne ( ![]() daraus habe ich ja Punkt 1 ISBN 10 Prüfziffer erledigt. |
AW: ISBN 10 / 13 Prüfen
|
AW: ISBN 10 / 13 Prüfen
Die ganzen Seiten kenne ich schon ( weiß ja wie man es berechnet ),
nur wie schreib ich dazu ein einfachen Quelltext. Beispiel: Mein Quelltext zum Punkt 1 ISBN 10 Prüfziffer.
Delphi-Quellcode:
dazu sollte man aber euch meine Form sehen um es zu verstehen, dass liegt alles oben im Anhang.
procedure TForm1.Button1Click(Sender: TObject);
var X, zahl1, zahl2, zahl3, zahl4, zahl5, zahl6, zahl7, zahl8, zahl9, zahl10, ergebnis, ziffer: Integer; begin zahl1 := StrToInt(Edit1.Text)*1; zahl2 := StrToInt(Edit2.Text)*2; zahl3 := StrToInt(Edit3.Text)*3; zahl4 := StrToInt(Edit4.Text)*4; zahl5 := StrToInt(Edit5.Text)*5; zahl6 := StrToInt(Edit6.Text)*6; zahl7 := StrToInt(Edit7.Text)*7; zahl8 := StrToInt(Edit8.Text)*8; zahl9 := StrToInt(Edit9.Text)*9; ergebnis := zahl1 + zahl2 + zahl3 + zahl4+ zahl5 + zahl6 + zahl7 + zahl8 + zahl9; ziffer := ergebnis div 11; zahl10 := ergebnis - ziffer * 11; if zahl10 = 10 then zahl10:= X; Edit14.Text := IntToStr(zahl10); end; |
AW: ISBN 10 / 13 Prüfen
Für Punkt 2 ist das die gleiche Procedure wie Button1Click nur umgekehrt und eine Zeile mehr, wo Du den Rest berechnest.
Edit: Ein bisschen Suche hätte Dir diesen ![]() |
AW: ISBN 10 / 13 Prüfen
Wo hängt es jetzt ewigentlich genau?
Zitat:
Einfach die Prüfziffer versuchen zu berechnen und mit der vorhandenen vergleichen. Tipp: - ganz oben recht ist die Forensuche zu finden - dort kann man "ISBN" + Enter eingeben - in den funden verstecken sich passende Threads, ABER - über dem ersten Suchergebnis gibt es ein kleines Kästchen, da steht "Code-Library (1)" ... eventuell hilft ja dieser Teil des Suchergebnisses :angle: PS: Das
Delphi-Quellcode:
entspricht quasi einem StrToInt für eine Ziffer.
Ord(S[i]) - Ord('0')
|
AW: ISBN 10 / 13 Prüfen
Hallo,
baue Dir doch verschieden Funktionen. Eine zur Berechnung der Prüfsumme: Function calcChecksum(ISBN: AnsiString): Byte; Eine zu Überprüfung der Gültigkeit: Function isCheckSumOK(ISBN: AnsiString): Boolean; In isCheckSumOK kannst Du calcCheckSum aufrufen und den ermittelten Wert mit dem der übergebenen ISBN vergleichen. Die Berechnung ob 10 stellig oder 13 stellig kannst Du ja abhänging von der Länge der übergebenen ISBN machen. Grüße Klaus |
AW: ISBN 10 / 13 Prüfen
Danke an alle aber guck bitte erst meine Form an ^^ und die Quelltexte wie schon oben erwähnt ( kenne ich )hab ja schon gegoogelt, sind alles function keine proceduren...
Punkt 2. ISBN gültig wenn 10 stellige zahl / um es kurz und simpel zu fassen. Da schreibe ich grade den Quelltext ( aber etwas anders ). Quelltext von mir: Rechne Alle Ziffern zusammen,wenn Ergebnis kleiner als 10 dann schreib in Edit14.Text....ISBN korrekt. Ist aber schwachsin.... Mein Quelltext. |
AW: ISBN 10 / 13 Prüfen
Den Code einer funktion kann man auch in eine Prozedur packen.
Ob mn das Ergebnis nun als Result zurückgibt oder z.B. in ein Edit kopiert, ist vollkommen egal. |
AW: ISBN 10 / 13 Prüfen
Sauberer wäre als Rückgabewert
|
AW: ISBN 10 / 13 Prüfen
Zitat:
|
AW: ISBN 10 / 13 Prüfen
Liste der Anhänge anzeigen (Anzahl: 1)
Ja ich weiß das es bei euch komisch rüber kommt liegt wahrscheinlich an meine Form.
![]() ![]() durch meine einzelnen Edit Felder. |
AW: ISBN 10 / 13 Prüfen
Könntest du den Screenshot nochmal in einer Größe, in der man was erkennen kann, posten?
|
AW: ISBN 10 / 13 Prüfen
.. ist es denn zwingend notwendig für jede einzelne Ziffer der ISBN
ein Edit zu nutzen? Zur Not könnte da auch ein MaskEdit verwendet werden, dann hättest Du alle Eingaben in einem bestimmten Format. Grüße Klaus |
AW: ISBN 10 / 13 Prüfen
Liste der Anhänge anzeigen (Anzahl: 1)
Nein nur weiß ich nicht wenn ich ein MaskEdit Feld nehme wie ich dann mein ersten Quelltext
einbaue den der ist ja auf mehreren Edit Feldern aufgebaut. Wenn MaskEdit Feld könnte ich auch locker Punkt 2 und 4 machen denn dann: code=MaskEdit if lenght(code) <> 13 oder 10 dann schreibe in Edit14.text Nicht Korrekt ..... else if lenght(code)= 13 or 10 dann schreibe in Edit14.text ISBN Korrekt. Weiß ich denke komisch ^^ Punkt 1 ( funktioniert ) aber der Ansatz mit dem ganzen einzelnen Edit Feldern ist Wahrscheinlich mein Problem. procedure TForm1.Button1Click(Sender: TObject); var X, zahl1, zahl2, zahl3, zahl4, zahl5, zahl6, zahl7, zahl8, zahl9, zahl10, ergebnis, ziffer: Integer; begin zahl1 := StrToInt(Edit1.Text)*1; zahl2 := StrToInt(Edit2.Text)*2; zahl3 := StrToInt(Edit3.Text)*3; zahl4 := StrToInt(Edit4.Text)*4; zahl5 := StrToInt(Edit5.Text)*5; zahl6 := StrToInt(Edit6.Text)*6; zahl7 := StrToInt(Edit7.Text)*7; zahl8 := StrToInt(Edit8.Text)*8; zahl9 := StrToInt(Edit9.Text)*9; ergebnis := zahl1 + zahl2 + zahl3 + zahl4+ zahl5 + zahl6 + zahl7 + zahl8 + zahl9; ziffer := ergebnis div 11; zahl10 := ergebnis - ziffer * 11; if zahl10 = 10 then zahl10:= X; Edit14.Text := IntToStr(zahl10); |
AW: ISBN 10 / 13 Prüfen
Hi,
Zitat:
LG, Frederic |
AW: ISBN 10 / 13 Prüfen
....
|
AW: ISBN 10 / 13 Prüfen
Hi,
nur um das nachträgliche Editieren klarzustellen: Zum Zeitpunkt meines Postings war mein Zitat vollständig - da fehlte der 2. Satz mit Teamviewer noch. So oder so bin ich nicht der Meinung, dass dein Aufruf mit der Suche nach Nachhilfe vergleichbar ist, sondern du bietest Geld für das fertige Produkt. Also eine gekaufte Prüfungsleistung. LG, Frederic |
AW: ISBN 10 / 13 Prüfen
.....
|
AW: ISBN 10 / 13 Prüfen
bitte um thread löschung danke
|
AW: ISBN 10 / 13 Prüfen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz