Behöver hjälp med en uppgift är über noob!
Hejsan, skulle vilja ha hjälp med ett program jag skrivit.
Får inte till "lägga till fler rutan" då man tycker nej vill jag att den ska skriva ut resultat på de inputsen man gjort hitills.
Den gjorde det först, men skrev samtidigt ut " Du får endast skriva siffor ".
Då jag har en try catch del som ska hindra att bokstäver skrivs in.
Så jag flyttade try catch delen så den skulle ligga innan "lägga till rutan".
Men då får jag error när man trycker nej i "lägga till fler rutan" det står Exception in thread "main" java.lang.ArithmeticException: / by zero
at uppgift.Btest.main(Btest.java:54).
Så här ser koden ut, tack så hemskt till den som lyckas hitta problemet <3
package uppgift;
import javax.swing.JOptionPane;
public class Btest {
private static final boolean ArithmeticException = false;
public static void main(String[] args) {
int totalman = 0;
int totalwoman = 0;
int manage= 0;
int womage= 0;
int x = 1;
int z = 0;
String s;
for(int i = 0; i < 10; i++) { // for loop
while(z < 10) {
try {
int knappNr = JOptionPane.showConfirmDialog(null, "Är du en man?");
if (knappNr == 0) { //ja
totalman++;
s = JOptionPane.showInputDialog("hur gammal är du?");
manage += Integer.parseInt(s);
}
else if (knappNr == 1) { // nej
totalwoman++;
s = JOptionPane.showInputDialog("Du är en kvinna, hur gammal är du?");
womage += Integer.parseInt(s);
}
else {
JOptionPane.showMessageDialog(null, "Hejdå");
System.exit(0); // avbryt programmet
}
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Du får endast skriva siffor");
}
// Om man vill lägga till fler ruta
int fortsKnapp = JOptionPane.showConfirmDialog(null, "Vill du lägga till fler?");
if (fortsKnapp == 0) { // ja
}
else if (fortsKnapp == 1) { // nej, HÄR UPPSTÅR PROBLEMET, den vill ej skriva ut utan kraschar.
JOptionPane.showMessageDialog(null, "Antal män " + totalman + " st" + "\nMännens totala ålder " + manage + " år" + "\nMännens medelålder " + (manage / totalman) + " år" +
"\nAntal kvinnor " + totalwoman + " st" + "\nKvinnornas totala ålder " + womage + " år" + "\nKvinnornas medelålder " + (womage / totalwoman) + " år");
System.exit(0);
}
}
}
x=2;
z++;
while (x==1);
JOptionPane.showMessageDialog(null, "Antal män " + totalman + " st" + "\nMännens totala ålder " + manage + " år" + "\nMännens medelålder " + (manage / totalman) + " år" +
"\nAntal kvinnor " + totalwoman + " st" + "\nKvinnornas totala ålder " + womage + " år" + "\nKvinnornas medelålder " + (womage / totalwoman) + " år");
}
}