Varför fungerar inte "while loopen"?
package Skoluppgift30;
import java.util.stream.*;
import java.util.*;
public class Programmeringsolympiaden {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//int par[] = { 2, 3, 2, 3, 2, 3, 2 };
int z = 0;
int slag[] = new int[8];
int antalbanor;
System.out.println("Hur många banor spelade du?: ");
antalbanor = sc.nextInt();
int par[] = new int[antalbanor];
for (int x = 0; x<antalbanor/2 + 0.5 ;x++){
par[x] = 2;
z++;}
System.out.println(z);
while (z<antalbanor){
z++;
par[z] =3;
}
int summapar = IntStream.of(par).sum();
//int summapar = IntStream.of(par).sum();
for (int i = 0; i < antalbanor; i++) {
System.out.println("Hur många slag slog du?: ");
slag[i] = sc.nextInt();
if (slag[i] > 7) {
slag[i] = 7;
}
}
int summaslag = IntStream.of(slag).sum();
int totalt = summaslag - summapar;
if (totalt < 0) {
System.out.println("Du gick " + totalt + " på dessa omgångar");
}
if (totalt > 0) {
System.out.println("Du gick +" + totalt + " på dessa omgångar");
}
}
}
Detta är vad jag har skrivit hittills och notera för er som vet vad programmeringsolympiaden är så är detta en uppgift som jag redan har blivit testad för och gör nu uppgiften i efterhand. Förövrigt är jag väl medveten om att det är en riktigt dålig kod då jag är extremt nybörjare. Men det jag undrar över är varför while loopen där jag jämför "z" med "antalbanor" inte fungerar. Om jag ersätter den med en "if" så fungerar koden som önskat (fungerar alltså till viss del men den körs ju bara en gång och jag skulle vilja köra den flera gånger) Om någon vill förklara varför det inte fungerar eller ge något tips så är jag mycket glad över det!