2016-11-05 99 views
0

练习的第一部分是计算测试分数的平均值。接下来的问题要求我建立这个问题并计算最小值和最大值。谁能帮我?这是我的代码到目前为止。在Java中计算最小值和最大值?

import java.util.Scanner; 
import java.io.*; 
import java.text.DecimalFormat; 

public class hw 
{ 
public static void main (String[] args) 
{ 
    int maxGrade; 
    int minGrade; 
    int count=0; 
    int total=0; 
    final int SENTINEL = -1; 
    int score; 

    Scanner scan = new Scanner(System.in); 
    System.out.println("To calculate the class average, enter each test 
    score."); 
    System.out.println("When you are finished, enter a -1."); 

    System.out.print("Enter the first test score > "); 
    score = scan.nextInt(); 

    while (score != SENTINEL) 
    { 
     total += score; 
     count ++; 

     System.out.print("Enter the next test score > "); 
     score = scan.nextInt(); 
    } 
    if (count != 0) 
    { 
     DecimalFormat oneDecimalPlace = new DecimalFormat("0.0"); 
     System.out.println("\nThe class average is " 
       + oneDecimalPlace.format((double) (total)/count)); 
    } 
    else 
     System.out.println("\nNo grades were entered"); 
    } 

    } 

回答

1

while循环,您可以比较当前比分的最大值和最小值。

while (score != SENTINEL) 
{ 
    total += score; 
    count ++; 
    if(score > maxGrade) 
     maxGrade = score; 
    if(score < minGrade) 
     minGrade = score; 
    System.out.print("Enter the next test score > "); 
    score = scan.nextInt(); 
} 

您还需要设置最大值和最小值(声明他们的时候),他们的“相对”值:

int maxGrade = Integer.MIN_VALUE; 
int minGrade = Integer.MAX_VALUE;