Guten Morgen ;D
ich hätte da eine Frage.
Will schon vorwegnehmen, dass ich ein Java Anfänger bin ;D (Studiere Mathe, haben aber immer 1 Info Modul)
Wir sollen in ein ,von unseren Professor entwickeltes, Programm ein Würfel konstruieren und nebenbei sollen die Häufigkeiten der gewürfelten Zahlen gezählt und ausgegeben werden.
Sprich: Ich würfel 1 => Zahl 1 = 0 + 1 = 1
Ich würfel 1 => Zahl 1 = 1 + 1 = 2
usw.
Ich habe das ganze mit und ohne Arrays versucht - leider ohne Erfolg.
Hier der Code mit dem Array-Versuch ( ab "/*der Zähler, der nicht funktioniert*/" das Problem):
So sieht das ganze im Programm aus:
http://www.myimg.de/?img=bildjava9e134.jpg
Meine Vorstellung war es, dass der dann z.B. bei der 4 die Zwischenwerte immer speichert und immer +1 hochzählt und annimmt, wenn gewürfelt wurde.
Ich denke mein Problem ist es, dass die Variable nicht dynamisch ist.
Also die initialisierten Werte int zählerone=0; etc. verändern sich leider nicht und ich weiß auch nicht,
wie man das beheben soll.
Ohne Arrays hat es genauso gespackt.
Vielleicht ist meine Idee vom Ansatz her falsch. Ich hoffe ich habe das Problem ausführlich genug geschildert und bin für jeden Ansatz und jede Hilfe sehr dankbar ;D
Mit freundlichen Grüßen,
jonas
ich hätte da eine Frage.
Will schon vorwegnehmen, dass ich ein Java Anfänger bin ;D (Studiere Mathe, haben aber immer 1 Info Modul)
Wir sollen in ein ,von unseren Professor entwickeltes, Programm ein Würfel konstruieren und nebenbei sollen die Häufigkeiten der gewürfelten Zahlen gezählt und ausgegeben werden.
Sprich: Ich würfel 1 => Zahl 1 = 0 + 1 = 1
Ich würfel 1 => Zahl 1 = 1 + 1 = 2
usw.
Ich habe das ganze mit und ohne Arrays versucht - leider ohne Erfolg.
Hier der Code mit dem Array-Versuch ( ab "/*der Zähler, der nicht funktioniert*/" das Problem):
Code:
int b=(int)(6*Math.random()+1);
groesse(7,2);
System.out.println(b);
/*Würfel ändert Augenzahl im Programm*/
switch(b){
case 1: form(0, "d1"); break;
case 2: form(0, "d2"); break;
case 3: form(0, "d3"); break;
case 4: form(0, "d4"); break;
case 5: form(0, "d5"); break;
case 6: form(0, "d6"); break;
}
/*der Zähler, der nicht funktioniert*/
int feld[]; feld = new int[6];
int zählerone=0;
int zählertwo=0;
int zählerthree=0;
int zählerfour=0;
int zählerfive=0;
int zählersix=0;
if (b<2){
feld[0] =zählerone+1;
System.out.println( Arrays.toString( feld ));
} else if (b<3){
feld[1] =zählertwo+1;
System.out.println( Arrays.toString( feld ));
} else if (b<4){
feld[2]=zählerthree+1;
System.out.println( Arrays.toString( feld ));
} else if (b<5){
feld[3]=zählerfour+1;
System.out.println( Arrays.toString( feld ));
} else if (b<6){
feld[4]=zählerfive+1;
System.out.println( Arrays.toString( feld ));
} else if (b<7){
feld[5]=zählersix+1;
System.out.println( Arrays.toString( feld ));
}
http://www.myimg.de/?img=bildjava9e134.jpg
Meine Vorstellung war es, dass der dann z.B. bei der 4 die Zwischenwerte immer speichert und immer +1 hochzählt und annimmt, wenn gewürfelt wurde.
Ich denke mein Problem ist es, dass die Variable nicht dynamisch ist.
Also die initialisierten Werte int zählerone=0; etc. verändern sich leider nicht und ich weiß auch nicht,
wie man das beheben soll.
Ohne Arrays hat es genauso gespackt.
Vielleicht ist meine Idee vom Ansatz her falsch. Ich hoffe ich habe das Problem ausführlich genug geschildert und bin für jeden Ansatz und jede Hilfe sehr dankbar ;D
Mit freundlichen Grüßen,
jonas