Instead of reading in an entire list N1,N2,⋯N1,N2,⋯ all at once, some algorithms (depending on the task to be done) can read in only one element at a time and process that single element completely before inputting the next one. This can be a useful technique when the list is very big (e.g., billions of elements) and there might not be enough memory in the computer to store it in its entirety. Write an algorithm that reads in a sequence of values v≥0, one at a time, and computes the average of all the numbers. You should stop
ORIGINAL Q:
Instead of reading in an entire list N1,N2,⋯N1,N2,⋯ all at once, some algorithms (depending on the task to be done) can read in only one element at a time and process that single element completely before inputting the next one. This can be a useful technique when the list is very big (e.g., billions of elements) and there might not be enough memory in the computer to store it in its entirety. Write an
PLEASE MODIFY THE FOLLOWING CODE SO THE USER INPUTS THE NUMBERS ONE BY ONE:
ORIGINAL Q:
Instead of reading in an entire list N1,N2,⋯N1 ,N2,⋯ all at once, some algorithms (depending on the task to be done) can read in only one element at a time and process that single element completely before inputting the next one. This can be a useful technique when the list is very big (e.g., billions of elements) and there might not be enough memory in the computer to store it in its entirety. Write an algorithm that reads in a sequence of values v≥0, one at a time, and computes the average of all the numbers. You should stop the computation when you input a value of V = −1. Do not include this negative value in your computations; it is not a piece of data but only a marker to identify the end of the list.
PLEASE MODIFY THE FOLLOWING CODE SO THE USER INPUTS THE NUMBERS ONE BY ONE:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the numbers: ");
double average = 0; // average variable
int n =0; // this is length
while(true) { //
int num = sc.nextInt(); // Input num
if(num == -1) // if num is -1
break;
n++;
average = (average*(n-1) + num)/n; // To calculate the average
}
System.out.println("Average is: " + average);
}
}
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images