开发者

Java - Highest, Lowest and Average

开发者 https://www.devze.com 2022-12-31 13:14 出处:网络
Right, so why does Java come up with this error: Exception in thread \"main\" java.lang.Error: Unresolved compilation problem:

Right, so why does Java come up with this error:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: Type mismatch: cannot convert from double to int

at rainfall.main(rainfall.java:38)

From this:

public class rainfall {

 /**
  * @param args
  */
 public static void main(String[] args) 
 {
 int[]  numgroup;
 numgroup = new int [12];
 ConsoleReader console = new ConsoleReader();
 int highest;
 int lowest;
 int index;
 int tempVal;
 int minMonth;
    int minIndex;
 int maxMonth;
 int maxIndex;


 System.out.println("Welcome to Rainfall");
 // Input (index now 0-based)
 for(index = 0; index < 12; index = index + 1)
 {       
     System.out.println("Please enter the rainfall for month " + index + 1);
     tempVal = console.readInt();
     while (tempVal>100 || tempVal<0)
     {
         System.out.println("The rating must be within 0...100. Try again");
         tempVal = console.readInt();
     }
     numgroup[index] = tempVal;
 }           

 lowest = numgroup[0];
 highest = numgroup[0];
 int total = 0.0;
 // Loop over data (using 1 loop)
 for(index = 0; index < 12; index = index + 1)
 {       
     int curr = numgroup[index];
     if (curr < lowest) {
         lowest = curr;
         minIndex = index;
     }
     if (开发者_StackOverflow中文版curr > highest) {
         highest = curr;
         maxIndex = index;
     }
      total += curr;
 }
 float avg = (float)total / numgroup.length;

 System.out.println("The average monthly rainfall was " + avg);
 // +1 to go from 0-based index to 1-based month
 System.out.println("The lowest monthly rainfall was month " + minIndex + 1);
 System.out.println("The highest monthly rainfall was month " + maxIndex + 1);

 System.out.println("Thank you for using Rainfall");

 }


 private static ConsoleReader ConsoleReader() {

  return null;
 }

}


I guess the culprit is this line:

int total = 0.0;

should be

int total = 0;

instead.


Problem is with this line here:

int total = 0.0; 

Need to change total to be of type float

0

精彩评论

暂无评论...
验证码 换一张
取 消