Hej jag försöker skriva ett program där man skall fylla i ett antal provresultat.
Först skall man välja hur många prov man skall rätta och sen skriva in resultat för varje prov men jag fastnar på ett ställe när jag gör arrayer. Programmet funkar bra om jag väljer ett bestämt antal prov som skall rättas. Men när jag använder mig av variabeln antalprov för hur många arrayer som skall skapas och prov som skall rättas då funkar det inte.
Så här ser koden ut.
[kod]
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int antalProv;
System.out.println("Hur många prov skall du rätta?");
antalProv = sc.nextInt();
int[] prov;
prov = new int[antalProv];
for (int i = 1; i <= antalProv; i++) {
System.out.println("Mata in resultat " + i);
prov[i] = sc.nextInt();
}
}
[/kod]
Då får jag detta meddelande.
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at betyg.Betyg.main(Betyg.java:34)
Java Result: 1
Först skall man välja hur många prov man skall rätta och sen skriva in resultat för varje prov men jag fastnar på ett ställe när jag gör arrayer. Programmet funkar bra om jag väljer ett bestämt antal prov som skall rättas. Men när jag använder mig av variabeln antalprov för hur många arrayer som skall skapas och prov som skall rättas då funkar det inte.
Så här ser koden ut.
[kod]
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int antalProv;
System.out.println("Hur många prov skall du rätta?");
antalProv = sc.nextInt();
int[] prov;
prov = new int[antalProv];
for (int i = 1; i <= antalProv; i++) {
System.out.println("Mata in resultat " + i);
prov[i] = sc.nextInt();
}
}
[/kod]
Då får jag detta meddelande.
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at betyg.Betyg.main(Betyg.java:34)
Java Result: 1
Kommentera