\Java
NestedLoops.java
//********************************************************************
//
// Classname.java
//
//********************************************************************
//
// Program Description and Design Overview:
// a program that gets the average of 'count' number of values entered
//
// Input (read) a student id number (an integer value.)
// Loop while the id number is not zero
// Read a student name as a String.
// Note, the Keyboard class method readString reads all characters -- INCLUDING blanks -- up until
// the end of the line.
// Read a count (an integer number)
// Loop 'count' times:
// each time through the loop read in an integer value and add that value to a sum variable
// Print out the id number and name string on one line
// Print out the count and average (as a double with two decimal places precision) on the next line
// There should be no prompt messages printed and when output is printed your program should only
// print the variable values separated by whitespace, i.e., no labels such as "count = " or "average = ".
//
// Input Requirements:
// 1. student ID number (integer)
// 2. name (string)
// 3. count (integer)
// 4. 'count' amount of numbers (integer)
//
// Output Requirements:
// 1. student ID number and name on the same line
// 2. 'count' and average of numbers inputed after count
//
// Program Preconditions:
// 1. input comes from a file
//
//********************************************************************
import cs1.Keyboard;
import java.text.DecimalFormat;
public class NestedLoops
{
//-----------------------------------------------------------------
// a program that gets the average of 'count' number of values entered
//-----------------------------------------------------------------
public static void main (String[] args)
{
int IdNum, // student ID number
count, // number for how many numbers to get average of
sum = 0; //total for amount of numbers enterd
// Format number to two decimal places
DecimalFormat fmt = new DecimalFormat ("0.##");
// read student ID number
IdNum = Keyboard.readInt();
// loop while sentinel value doesn't equal 0
while (IdNum != 0)
{
// reads name
String name = Keyboard.readString();
// reads count
count = Keyboard.readInt();
// loop 'count' times and increment x by 1
for (int x = 0; count > x; x++)
{
// read 'numbers'
int numbers = Keyboard.readInt();
// add value of numbers to sum and store in sum
sum += numbers;
}
// find average of all the numbers
double average = (double)sum / (double)count;
// print ID number and name
System.out.println (IdNum + " " + name);
// print 'count' and average
System.out.println (count + " " + fmt.format(average));
// read ID number (give chance to enter 0 to exit the loop and stop the program)
IdNum = Keyboard.readInt();
}
} //end main
} // end class NestedLoops