View Single Post
  #1 (permalink)  
Old 12-11-2007, 11:08 AM
gemtez gemtez is offline
Member
 
Join Date: Dec 2007
Posts: 3
gemtez is on a distinguished road
working out wrong average
hello, i want to work out an average of different books' ratings , but my code is working out the wrong average, also i want to group the ratings that are for the same book (if they are entered more than once).

--------------------------------------------------------

import java.util.Scanner;

public class bookReview4
{

public void readBookTitles(String [] bookTitles)
{

}

public void readRatings(String [] bookTitles)
{ int count=0;
double sum=0;
int arrayposition;
int book=0;
// double average;
int rating=0;

//String [] bookTitles;

int numberofbooks=count+1;

double [] ratingSum= new double [numberofbooks];
Scanner keyboard = new Scanner(System.in);

while(rating<bookTitles.length)
{

System.out.println("please put rating for "+bookTitles[rating]);
ratingSum[count]= keyboard.nextInt();
//sum+=ratingSum[count];
// =rating;
rating++;
//count++;
}
for (rating= 0; rating<bookTitles.length; rating++)
{

sum += ratingSum[count];
}
double average=sum/3;
//average =
System.out.println("average is "+ average);

// for(int i=0 ;bookTitle[rating]=bookTitle[i]; i++)
// {
//
// System.out.println("average for"+bookTitle[i]+ "is ");
// }

//Give user ratings
if (average >=0 && average<1)
{
System.out.println("No rating ");
System.out.println();
}

else if (average >=1 && average<2)
{
System.out.println("Waste Paper ");
System.out.println();
}

else if (average >=2 && average<3)
{
System.out.println("Dissappointing ");
System.out.println();
}

else if (average >=3 && average<4)
{
System.out.println("A good read ");
System.out.println();
}

else if (average >=4 && average<5)
{
System.out.println("Excellent book ");
System.out.println();
}

else if (average >=5)
{
System.out.println("A must read! ");
System.out.println();
}

}
}
Reply With Quote
Sponsored Links