jeden 2ten Buchstaben aus array

  • Themenstarter Themenstarter mööp
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
M

mööp

Gast
Moin,
ist es möglich mit einer schleifen jeden zweiten Buchstaben aus einen array/String
zum rechnen "herrauszuziehen"?

so ähnlich wie:
Java:
for (i = 0; i < 10; i++) {
 
Java:
	String s = "12345";
	for (int i = 0; i < s.length(); i+=2) {
	    System.out.println(s.charAt(i));
	}

so? 😀

/edit: pfff 😀
 
Okay, schonmal vielen Dank, aber damit bekomm ich mein Programm
leider auch net so richtig hin.

Java:
public class  Isbn {
    public static void main(String[] args) {
        if (args.length == 0){
            System.out.println("Fehler! Bitte geben sie eine 13 stellige Zahl ein!");
        }                   
            for (String zahl: args) {

              if (zahl.length() == 13) {
                   double ergebnis; 
                   double rest;
                   double ersteZiffern;
                   double pruefziffer;
                   double z0 = zahl.charAt(0);
                   double z1 = zahl.charAt(1);
                   double z2 = zahl.charAt(2);
                   double z3 = zahl.charAt(3);
                   double z4 = zahl.charAt(4);
                   double z5 = zahl.charAt(5);
                   double z6 = zahl.charAt(6);
                   double z7 = zahl.charAt(7);
                   double z8 = zahl.charAt(8);
                   double z9 = zahl.charAt(9);
                   double z10 = zahl.charAt(10);
                   double z11 = zahl.charAt(11);
                   pruefziffer = zahl.charAt(12);
                   ergebnis = 3 * ((z1 + z3 + z5 + z7 + z9 + z11) - 288);
                   ergebnis = ergebnis + ((z0 + z2 + z4 + z6 + z8 + z10) - 288);  
                   rest = (ergebnis + (pruefziffer - 48)) % 10;
                   ersteZiffern = (((z0 - 48) * 100) + ((z1 - 48) * 10 ) + z2 - 48);   
               
                  if (rest == 0 && ersteZiffern == 978 || ersteZiffern == 979) 
                   System.out.println(zahl+ " ist eine gueltige zahl");
                   else
                     System.out.println(zahl+ " ist keine gueltige Zahl");    
             }

Ich dachte das man das noch etwas einfacher machen kann aber dafür brauch ich ja mehrere for schleifen oder?
 
double z0 = zahl.charAt(0);

zahl ist doch ein string, von dem holst du dir einen char => char != double
😀

so z.b.
Java:
	double z0 = Double.parseDouble(String.valueOf(zahl.charAt(0)));

/edit:
Ich dachte das man das noch etwas einfacher machen kann aber dafür brauch ich ja mehrere for schleifen oder?
jaein(eine). aber die erste foreach-schleife kannst du dir doch eig. sparen oder? du übergibst doch anscheinend eh nur einen string an das programm?!
 
Zuletzt bearbeitet:
Weiß jetzt nicht genau was du meinst, dass programm hat ja vorher auch
funktioniert..
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben