1) A method to generate a list of integer values between 0 and 99(inclusive). Me
ID: 3632071 • Letter: 1
Question
1) A method to generate a list of integer values between 0 and 99(inclusive).Method signature:
public static int[] generateList(int size) // size is length of the array
2) A method to print the list.
Method signature:
public static void printArray(int[] list, int numberPerLine)
3)A method to create a histogram of the values in list. The method should create the histogram based on the following range:
0-9
10-19
20-29
30-39
40-49
50-59
60-69
70-79
80-89
90-99
Method header is:
Public static int[] histogram(int[] list)
4) A method to print the histogram graph (*=10)
5) Write a main method to generate a list of 100 values. Print the list (10 values per line). Print the histogram graph.
6) Modify main method to generate a list of 1000 values. Print the histogram graph.
Explanation / Answer
please rate -thanks
1* = 10 numbers what about 11 numbers or 12 numbers--how many starts? I rounded 11 to 2 starts etc
import java.util.*;
public class histogram
{
public static void main(String[] args)
{ int i, n,intervals=10;
n=1000; //number of numbers to generate
int[]numbers=new int[n];
numbers =generateList( n);
int[] hist=new int[intervals];
hist=histogram(numbers);
drawhist(intervals,hist);
}
public static void printArray(int[] numbers,int line)
{System.out.println("Numbers generated");
for(int i=0;i<numbers.length;i++)
{ System.out.print(numbers[i]+" ");
if((i+1)%line==0)
System.out.println();
}
}
public static void drawhist(int intervals, int hist[])
{int i,j;
System.out.println(" Histogram ---------------------------");
for(i=0;i<intervals;i++)
{System.out.print(i*10+"-"+(i*10+9)+" | ");
int stars=hist[i]%10;
if(stars>0)
stars=1;
for(j=0;j<hist[i]/10+stars;j++)
System.out.print("*");
System.out.println();
}
}
public static int[] histogram(int numbers[])
{int i;
int[] h=new int[10];
for(i=0;i<10;i++)
h[i]=0;
for(i=0;i<numbers.length;i++)
if(numbers[i]>=90)
h[9]++;
else if(numbers[i]>=80)
h[8]++;
else if(numbers[i]>=70)
h[7]++;
else if(numbers[i]>=60)
h[6]++;
else if(numbers[i]>=50)
h[5]++;
else if(numbers[i]>=40)
h[4]++;
else if(numbers[i]>=30)
h[3]++;
else if(numbers[i]>=20)
h[2]++;
else if(numbers[i]>=10)
h[1]++;
else
h[0]++;
return h;
}
public static int[] generateList(int size) // size is length of the array { Random generator = new Random();
{int i;
Random generator=new Random();
int[]numbers=new int[size];
for(i=0;i<size;i++)
numbers[i]=generator.nextInt(100 );
return numbers;
}
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.