isbn test

0

witam,
mam za zadanie napisac metode isValidIsbn, ktora bedzie sprawdzac czy numer isbn ksiazki jest poprawny.
Czysto teoretycznie ten problem mozna rozlozyc na 3 fazy:

1)trzeba policzyc gewichtete quersum(nie wiem jak to polsku jest heh)rozni sie to tym od zwyklej sumy elementow, ze najpierw mnozy sie kazdy element przez kokretny element innego ciagu
w tym wypadku quersumme dla 10-cyfrowego numeru isbn liczy sie tak:
3548234100(isbn)= 103+95+84+78+62+53+44+31=209

2)209 dzielimy przez 11 i jesli wychodzi bez reszty to dobry isbn mamy, jesli wyjdzie reszta to zly isbn numer jest

doszedlem do tego jak na razie

public boolean isValidIsbn(){
      boolean ergebnis=false;
      if (querSumme%11==0) {
            return  true;
       }
   
   return false;
   }

   public int querSumme(){ ???  

ale nie wiem jak zrobic quersumme, a numer isbn mam dany jako private string

moze powienienem zrobic z niego array i potem utworzyc drugi array, zawierajacy liczby od 1 do 10. Przemnozyc oba array ze soba i potem sume z nowo powstalego array zrobic ?

z gory dzieki

0
                String isbn="3548234100";
		int querSumme=0;
		int tmp=10;
		for(char c:isbn.toCharArray()){
			querSumme+=Integer.parseInt(String.valueOf(c))*tmp--;
		}
		System.out.println(querSumme);

pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1