Hallo Leute,
Ich hab ein tolles programm zu schreiben welches Lottokugelziehungen breechnet Tipps annimt und das ganze als krönenden Abschluss als Statistik auswerted. Bisher hat alles gut geklappt bis zu dem punkt bis ich vergleichen muss um zu zeigen wieviele 6er 5er 4er etc es gibt.
Kommentiert hab ich noch nicht ich hoffe ihr könnt was mit dem Gedankengang anfangen.
Mein Problem liegt darin das ich in einem vector ziehungen speichere und diese ziehungen vom Typ int array sind und ich die irgendwie nicht wieder aus dem vector rausbekomme bzw nicht vergleichen kann
[JAVA=42] public int[] findeUebereinstimmung(Vector<Ziehung> speicher, Vector<Ziehung> tipp){
int[] speicherArray = new int[6];
int[] tippArray = new int[6];
int[] anzahl = new int[7];
int zaehler;
for(int i = 0; i <= speicher.size(); i++){
for(int j=0; j <= tipp.size(); j++){
speicherArray = (int[])speicher.get(i).getZiehung(); //mit und ohne casts ist das gleiche resultat
tippArray = (int[])tipp.get(j).getZiehung();
zaehler = 0;
for(int k = 0;k < speicherArray.length; k++){
for(int l = 0; l < tippArray.length; l++){
if(speicherArray[k] == tippArray[l])zaehler++;
}
}
anzahl[zaehler]= anzahl[zaehler]+1;
}
}
return anzahl;
}[/code]
ich bekomme immer eine ArrayIndexOutOfBoundsException und versteh nicht so recht warum.
zum getZiehung
[JAVA=42]public class Ziehung {
int[] ziehung = new int[6];
public Ziehung(int[] ziehung) {
super();
this.ziehung = ziehung;
}
public int[] getZiehung() {
return ziehung;
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder();
builder.append(Arrays.toString(ziehung));
return builder.toString();
}
}[/code]
Ich hoffe auf hilfe nicht auf komplettlösungen da das programm zu gross wäre um alles einzeln zu posten.
Ich hab ein tolles programm zu schreiben welches Lottokugelziehungen breechnet Tipps annimt und das ganze als krönenden Abschluss als Statistik auswerted. Bisher hat alles gut geklappt bis zu dem punkt bis ich vergleichen muss um zu zeigen wieviele 6er 5er 4er etc es gibt.
Kommentiert hab ich noch nicht ich hoffe ihr könnt was mit dem Gedankengang anfangen.
Mein Problem liegt darin das ich in einem vector ziehungen speichere und diese ziehungen vom Typ int array sind und ich die irgendwie nicht wieder aus dem vector rausbekomme bzw nicht vergleichen kann
[JAVA=42] public int[] findeUebereinstimmung(Vector<Ziehung> speicher, Vector<Ziehung> tipp){
int[] speicherArray = new int[6];
int[] tippArray = new int[6];
int[] anzahl = new int[7];
int zaehler;
for(int i = 0; i <= speicher.size(); i++){
for(int j=0; j <= tipp.size(); j++){
speicherArray = (int[])speicher.get(i).getZiehung(); //mit und ohne casts ist das gleiche resultat
tippArray = (int[])tipp.get(j).getZiehung();
zaehler = 0;
for(int k = 0;k < speicherArray.length; k++){
for(int l = 0; l < tippArray.length; l++){
if(speicherArray[k] == tippArray[l])zaehler++;
}
}
anzahl[zaehler]= anzahl[zaehler]+1;
}
}
return anzahl;
}[/code]
ich bekomme immer eine ArrayIndexOutOfBoundsException und versteh nicht so recht warum.
zum getZiehung
[JAVA=42]public class Ziehung {
int[] ziehung = new int[6];
public Ziehung(int[] ziehung) {
super();
this.ziehung = ziehung;
}
public int[] getZiehung() {
return ziehung;
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder();
builder.append(Arrays.toString(ziehung));
return builder.toString();
}
}[/code]
Ich hoffe auf hilfe nicht auf komplettlösungen da das programm zu gross wäre um alles einzeln zu posten.
Zuletzt bearbeitet von einem Moderator: