Gültigkeit einer ISBN Nummer prüfen!

Jim123

Mitglied
Hallo!

Ich benötige eine methode die mit isbn (10 & 13) auf gültigkeit überprüft...
Habe schon verschiedene Lösungsansätze probiert, leider alle ohne erfolgt!!

################################
Beispiel für ISBN 10: 3-12-517154-7
Beispiel für ISBN 13: 978-3-7657-2781-8
################################

Java:
public String setIsbn(String isbn) {
		String validIsbn = "## ISBN ungültig ##";
		int sumIsbn = 0;
		
		if(isbn.length() == 13){ // ISBN 10
			char z1 = isbn.charAt(0);
			char z2 = isbn.charAt(2);
			char z3 = isbn.charAt(3);
			char z4 = isbn.charAt(5);
			char z5 = isbn.charAt(6);
			char z6 = isbn.charAt(7);
			char z7 = isbn.charAt(8);
			char z8 = isbn.charAt(9);
			char z9 = isbn.charAt(10);
			char z0 = isbn.charAt(12);
			
			sumIsbn = ((z1*10) + (z2*9) + (z3*8) + (z4*7) + (z5*6) + (z6*5) + (z7*4) + (z8*3) + (z9*2) + (z0*1)) % 11;
			if(sumIsbn == z0){
				validIsbn = isbn;
			}
		}
		if(isbn.length() == 17){ // ISBN 13
			
			char z1b = isbn.charAt(0);
			char z2b = isbn.charAt(1); // *3
			char z3b = isbn.charAt(2);
			char z4b = isbn.charAt(4); // *3
			char z5b = isbn.charAt(6);
			char z6b = isbn.charAt(7); // *3
			char z7b = isbn.charAt(8);
			char z8b = isbn.charAt(9); // *3
			char z9b = isbn.charAt(11);
			char z10b = isbn.charAt(12); // *3
			char z11b = isbn.charAt(13);
			char z12b = isbn.charAt(14); // *3
			char z13b = isbn.charAt(16);
			
			sumIsbn = z1b + z3b + z5b + z7b + z9b + z11b + z13b + (3 * (z2b + z4b + z6b + z8b + z10b + z12b));
			System.out.println(sumIsbn);
			
			int tmp = sumIsbn % 10;
			if((10-tmp)%10 == z13b){
				validIsbn = isbn;
			}
		}
		return validIsbn;
	}

Was habe ich da falsch? :autsch::autsch:

1. Ich verstehe nicht warum bei (z1*10) + (z2*9) + (z3*8) + (z4*7) + (z5*6) + (z6*5) + (z7*4) + (z8*3) + (z9*2) + (z0*1) --> 2750 raus kommt!

2. z1b + z3b + z5b + z7b + z9b + z11b + z13b + (3 * (z2b + z4b + z6b + z8b + z10b + z12b))
Sollte eigentlich 132 ergeben mein compiler suckt aber 1340 aus ???:L

Bitte um hilfe muss das bis heute abend fertig bekommen

danke! Gruss
 
S

SlaterB

Gast
schau dir das mal an:
Java:
public class Test {
    public static void main(String[] args)  {
        char c = 0;

        c = 5;
        System.out.println("erste  Fünf: " + c + " - " + (int)c);
        c = '5';
        System.out.println("zweite Fünf: " + c + " - " + (int)c);

    }
}

ASCII-Tabelle
 
G

Gast2

Gast
Java:
public static boolean checkISBN10(int[] isbn) {
		int sum = 0;
		for (int i = 1; i <= isbn.length; i++) {
			sum += i * isbn[i - 1];
		}
		if (sum % 11 == 0) {
			return true;
		} else {

			return false;
		}

	}

	public static boolean checkISBN13(int[] isbn) {
		int sum = 0;
		for (int i = 1; i < isbn.length; i++) {
			if (i % 2 == 0) {
				sum += isbn[i - 1] * 3;
			} else {
				sum += isbn[i - 1];
			}
		}

		int lastDigit = sum % 10;

		int check = (10 - lastDigit) % 10;

		if (isbn[isbn.length - 1] == check) {
			return true;
		} else {
			return false;
		}
	}

	public static void main(String[] args) {
		int[] isbn10 = new int[] { 3, 8, 6, 6, 8, 0, 1, 9, 2 };
		System.out.println(checkISBN10(isbn10));
		int[] isbn13 = new int[] { 9, 7, 8, 3, 7, 6, 5, 7, 2, 7, 8, 1, 8 };
		System.out.println(checkISBN13(isbn13));
	}

Einfach ganz strikt den nach Wikipedia ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Worte auf Gültigkeit bzgl. Alphabet testen Java Basics - Anfänger-Themen 1
M Variablen Gültigkeit von Klassenvariablen bei Vererbung? Java Basics - Anfänger-Themen 4
G Gültigkeit eines Strings auf ISO-LATIN-1 prüfen Java Basics - Anfänger-Themen 9
Y File auf Gültigkeit überprüfen Java Basics - Anfänger-Themen 12
L Datum auf Gültigkeit prüfen Java Basics - Anfänger-Themen 27
G Datum auf gültigkeit Kontrollieren Java Basics - Anfänger-Themen 14
M Datum auf Gültigkeit überprüfen Java Basics - Anfänger-Themen 4
C Ausweis auf gültigkeit prüfen Java Basics - Anfänger-Themen 13
T Gültigkeit von break Java Basics - Anfänger-Themen 5
G Gültigkeit von Objekten Java Basics - Anfänger-Themen 2
G Problem mit Gültigkeit von Variabeln und Konstruktoren Java Basics - Anfänger-Themen 4
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
ixChronos Letzten 4 Ziffern einer großen Zahl ausgeben Java Basics - Anfänger-Themen 3
P Objekt einer Methode eines anderen Objektes übergeben Java Basics - Anfänger-Themen 5
L Variablenwerte aus einer Methode übergeben Java Basics - Anfänger-Themen 2
E Arrays in einer ArrayList miteinander vergleichen Java Basics - Anfänger-Themen 12
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
Shadowrunner Variablen Gibt es eine Möglichkeit die Ziffern/Stellen einer Zahl fest zu legen? Java Basics - Anfänger-Themen 3
D remove Object von einer Liste von Obejcts Java Basics - Anfänger-Themen 3
FunkyPhil94 Wert in einer Lambda Funktion erhöhen Java Basics - Anfänger-Themen 3
T Aufruf der Methode einer Oberklasse, wenn sie in der Unterklasse überschrieben ist. Polymorphie. Java Basics - Anfänger-Themen 2
B Kommunikation mit Seriellen Schnittstellen + Integration einer lib Java Basics - Anfänger-Themen 1
A Daten aus einer HashMap aus einer DB speichern und mit neuen Werten vergleichen Java Basics - Anfänger-Themen 8
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
D Länge einer Liste aufrufen. Java Basics - Anfänger-Themen 19
J Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen Java Basics - Anfänger-Themen 4
B Alle Strings bis zu einer Maimallänge aufzählen, die Bedingung erfüllen Java Basics - Anfänger-Themen 13
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
Soranix Erste Schritte Struktur als Anfänger // Von einer Klasse auf ein Objekt einer anderen Klasse zugreifen. Java Basics - Anfänger-Themen 6
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
T Fibonacci mit einer Hilfsmethode berechnen Java Basics - Anfänger-Themen 10
S Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 5
M Radius von einer ellipse bestimmen Java Basics - Anfänger-Themen 7
Say Fehlenden Code finden in einer while-Schleife? Java Basics - Anfänger-Themen 11
M Zufallszahl generieren mit einer linken und rechten Grenze Java Basics - Anfänger-Themen 3
N Was Passiert mit dem Namen einer Variable, wenn man diese einer Liste Hinzufügt Java Basics - Anfänger-Themen 16
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
W Objekte einer ArrayList in txt-datei schreiben mit Paths? Java Basics - Anfänger-Themen 2
S Best Practice Fragen zu Projektstruktur einer Datenbank-Abfrage-App (MVC) Java Basics - Anfänger-Themen 13
T Variable von Objekten in einer Methode überprüfen Java Basics - Anfänger-Themen 26
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
S Textausgabe in einer For-Schleife Java Basics - Anfänger-Themen 12
M Spezifischen Wert einer Zeile aus .txt Datei entnehmen Java Basics - Anfänger-Themen 15
B Popups mit Klicksabfangen zumAusfüllen einer .ods Datei Java Basics - Anfänger-Themen 0
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
E Suchfunktion in einer Liste Java Basics - Anfänger-Themen 39
T ungeordnete Werte-Paare in einer Liste Java Basics - Anfänger-Themen 7
FireHorses Einen Command erst nach einer Chateingabe aktivieren Java Basics - Anfänger-Themen 1
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
F wie kann ich die Position des letzten Vokals innerhalb einer Zeichenkette ermitteln? Java Basics - Anfänger-Themen 5
H Kapselung protected aber in einer Kindklasse nicht zugänglich Java Basics - Anfänger-Themen 5
R Methoden Werte einer ArrayList als Parameter übergeben. Java Basics - Anfänger-Themen 4
B Den Dateipfad einer Java Datei durch Code in Selbiger finden? Java Basics - Anfänger-Themen 10
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
L Dauerhaftes Speichern einer Eingabe bei einer ArrayList Java Basics - Anfänger-Themen 26
V Hilfe bei Implementierung einer boolean Methode Java Basics - Anfänger-Themen 6
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
stormyark Fehler beim überschreiben einer Variable Java Basics - Anfänger-Themen 1
H Kompliziertes Sortieren einer ArrayList mit Objekten(Sortieren nach X und Y) Java Basics - Anfänger-Themen 11
T Permanentes speichern von Objekten in einer ArrayList Java Basics - Anfänger-Themen 6
Saiko Zeilen einer Datei einlesen Java Basics - Anfänger-Themen 3
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
sserio Prüfziffer einer ISBN Nummer herrausfinden. Java Basics - Anfänger-Themen 14
J Benennung einer mir unbekannten Java - Ausdrucksweise Java Basics - Anfänger-Themen 5
LFB In einer For-Schleife alles in einer Zeile ausgeben Java Basics - Anfänger-Themen 14
sserio Wie kann man nach einer Klasse fragen? Java Basics - Anfänger-Themen 12
berserkerdq2 Wann soll ich den Stream schließen, wenn ich das in einer Methode habe? Java Basics - Anfänger-Themen 8
berserkerdq2 Wie gebe ich den Pfad zu einer Datei an, die in einem Ordner in Eclipse ist? Java Basics - Anfänger-Themen 1
M Variable in einer Schleife initialisieren Java Basics - Anfänger-Themen 46
D EinMalEins mithilfe einer for-Schleife und Array Java Basics - Anfänger-Themen 1
J int innerhalb einer Datei ändern Java Basics - Anfänger-Themen 1
D Hilfe bei einer Aufgabe mit for-Schleife Java Basics - Anfänger-Themen 6
Neuling47 Ich zerbreche mit den kopf an einer Aufgabe Java Basics - Anfänger-Themen 61
H Mit setter-Methode JLabel in einer andern Klasse ändern. Java Basics - Anfänger-Themen 40
J Zelleninhalt einer Jtable löschen Java Basics - Anfänger-Themen 2
Robert_Klaus Hamster java Simulation Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 5
stormyark 4 Bit in einer for-schleife funktioniert nicht Java Basics - Anfänger-Themen 3
F Werte in einer Arraylist Zählen Java Basics - Anfänger-Themen 2
M ArrayList mit einer Schleife befüllen Java Basics - Anfänger-Themen 2
A Ein Array bearbeiten und in einer anderen Methode nutzen Java Basics - Anfänger-Themen 6
A Ergebnis einer Methode bei einer anderen verwenden Java Basics - Anfänger-Themen 13
I Interface von einer EJB Klasse, um Code zu reduzieren Java Basics - Anfänger-Themen 1
M Interface als Parameter einer Klasse Java Basics - Anfänger-Themen 8
I Liste von Infos von einer eigenen Annotation in Liste speichern Java Basics - Anfänger-Themen 0
M Wie kann ich den Index i von einer LinkedList überprüfen? Java Basics - Anfänger-Themen 36
M Wie kann die Implementation einer Methode den Wert eines Attributs vermindern? Java Basics - Anfänger-Themen 3
M Wie verknüpfe ich eine Bedingung mit einer Methode ohne if-Verzweigung & Bedingungsoperator? Java Basics - Anfänger-Themen 2
P Doppelte werte in einer Liste zählen Java Basics - Anfänger-Themen 11
javapingu Jeglichen Inhalt einer Textdatei nach Zeile n löschen Java Basics - Anfänger-Themen 8
D mehrere Berechnungen in einer Methode Java Basics - Anfänger-Themen 9
P Iterieren mit einer Foreach in Lambdaschreibweise und Counter. Java Basics - Anfänger-Themen 1
M Methoden Wert einer Variable geht verloren? Java Basics - Anfänger-Themen 6
W Wie ziehe ich von einer bestimmten Zahl, Zahlen ab, bis mein Ergebnis null beträgt? Java Basics - Anfänger-Themen 10
X Was ist der Unterschied zwischen materialisierten und nichtmaterialisierten Attributen einer Klasse? Java Basics - Anfänger-Themen 1
U Wie ein Attribut von einer Klassenmethode in der Klasse speichern= Java Basics - Anfänger-Themen 2
M Wie richte ich eine Diagonale an Robotern in einer World ein? Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Neue Themen


Oben