I have to write a program that prompts the user to input the gender and GPA of four students, and print the average GPA for both male and female students when the loop ends.
I was able to compile and run, but uh...it doesn't work the way it should.
The dialog box pops up more than 8 times (4 for asking gender and 4 for asking GPA). I can't figure out why...
Also, i have to change this to For Loop...
Can anyone help me on this???
======================================================
import javax.swing.*;
public class Loop1
{
public static void main(String [] args)
{
String gender, male, female;
double gpa;
double maleTotal;
int maleCounter;
double femaleTotal;
int femaleCounter;
double maleGpa;
double femaleGpa;
String input1, input2;
final int MAX = 4;
int i;
maleTotal = 0;
femaleTotal = 0;
maleCounter = 0;
femaleCounter = 0;
i = 0;
input1 = JOptionPane.showInputDialog(null, "Enter Gender: male or female");
while (i < MAX)
{
if(input1.equals( "male" ))
{
input2 = JOptionPane.showInputDialog(null, "Enter GPA:");
gpa = Double.parseDouble(input2);
maleTotal = maleTotal + gpa;
maleCounter++;
}
else if(input1.equals( "female" ))
{
input2 = JOptionPane.showInputDialog(null, "Enter GPA:");
gpa = Double.parseDouble(input2);
femaleTotal = femaleTotal + gpa;
femaleCounter++;
}
input1 = JOptionPane.showInputDialog(null, "Enter Gender: male or female");
i++;
}
if(maleCounter != 0 && femaleCounter != 0)
{
maleGpa = (double)maleTotal/maleCounter;
femaleGpa = (double)femaleTotal/femaleCounter;
JOptionPane.showMessageDialog(null, "Average Male GPA is:" + maleGpa+"\nAverage Female GPA is:" + femaleGpa);
}
System.exit(0);
}
}


