Lab 2

Description:  Create a class NumberStats that will provide several methods to do math.  The methods using overloaded to support floating point numbers and integers.  This program will allows you to enter 1 to start enter numbers to find the first number entered, last number entered, how much number entered, the number of integers entered, the number of floating points entered, the minimum, the maximum, the sum and the average.  To exit, enter 2.

 

Main part:

import java.util.Scanner;
public class lab2{
public static void main(String[] args) {
int choice;
NumberStats number = new NumberStats();
Scanner input = new Scanner(System.in);
System.out.println(“Press 1 to enter a number”);
System.out.println(“Press 2 to exit”);
choice = input.nextInt();

switch (choice) {
case 1: {
boolean again = true;
while (again){
int c = number.getCount() + 1;
System.out.println(“Please enter number:” + c);
double x;
x = input.nextDouble();
if (x == (int) x){
number.numberStats((int)x);
}
else{
number.numberStats(x);
}

System.out.println(“Coutinue? (Y to continue, any other key to stop)”);
char in = input.next().charAt(0);

if(in == ‘y’ || in == ‘Y’){
again = true;
}
else {
again = false;
}
}

System.out.println(“First number entered: ” + number.getFirst());
System.out.println(“Last number entered: ” + number.getLast());
System.out.println(“Count of number entered: ” + number.getCount());
System.out.println(“Count of integer entered: ” + number.getInt());
System.out.println(“Count of float number entered: ” + number.getFloat());
System.out.println(“Minimum: ” + number.getMin());
System.out.println(“Maximum: ” + number.getMax());
System.out.println(“Total Sum: ” + number.getSum());
System.out.println(“Average: ” + number.getAvg());

input.close();
return;
}

case 2: {
input.close();
return;
}

default: {
System.out.println(“Error, Program will now exit”);
input.close();
return;
}
}
}
}

 

NumberStats part:

public class NumberStats {
private double firstnum, lastnum, minnum = Double.POSITIVE_INFINITY, maxnum = Double.NEGATIVE_INFINITY, avg;
private static int cNum = 0, cInt = 0, cFloat = 0;
private static double sum;

public NumberStats() {

}

public void numberStats(int x){
sum = sum + x;

if (minnum > x){
minnum = x;
}

if (maxnum < x){
maxnum = x;
}

if (cNum == 0){
firstnum = x;
}

cNum++;
cInt++;
lastnum = x;
}

public void numberStats(double x){
sum = sum +x;

if (minnum > x){
minnum = x;
}

if (maxnum < x){
maxnum = x;
}

if (cNum == 0){
firstnum = x;
}

cNum++;
cFloat++;
lastnum = x;
}

public double getFirst(){
return firstnum;
}

public double getLast(){
return lastnum;
}

public int getCount(){
return cNum;
}

public int getInt(){
return cInt;
}

public int getFloat(){
return cFloat;
}

public double getMin(){
return minnum;
}

public double getMax(){
return maxnum;
}

public double getSum(){
return sum;
}

public double getAvg(){
avg = sum/cNum;
return avg;
}
}

 

l2

Leave a Reply

Your email address will not be published. Required fields are marked *