File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes Number counting Problem Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Make it so: Java DB Connections & Transactions this week in the JDBC forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Number counting Problem" Watch "Number counting Problem" New topic

Number counting Problem

henry xiao

Joined: Apr 18, 2013
Posts: 7
[javadoc]I'm new to this site and was hoping to find some help as I'm beginning to learn Java

the problem is: Write a program that reads an unspecified number of integers, determines how many positive and negative values have been read, and computes the total and average of the input values (excluding 0s). Your program ends with the input 0. Display the avg as floating number.

An example run: Enter an int, input ends if it is 0: 1 2 -1 0
Number of positives is 2
Number of negatives is 1
Total is 2
Average is 2/3

What I have so far is:

Whenever I input numbers, it doesn't terminate. And also, I'm not sure how to calculate the average if there is not a definite amount of numbers that will be entered. Any help is much appreciated, thanks
Jeff Verdegan

Joined: Jan 03, 2004
Posts: 6109

Typically your loop would read one double from the input. In your case, every iteration through the loop reads 4 or 5.
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 45429
And welcome to the Ranch

I would suggest you cannot sort that out on screen. Get a sheet of paper and a pencil and write down how you would work out such averages. Then you can convert it to code easily.
Billy Sang

Joined: Apr 20, 2013
Posts: 15
I think the reason your program is not terminating is that the method nextDouble and its relatives return a value, but you're not storing the value with a variable.
Another reason might be that your using nextDouble method instead of the hasNextDouble for checking the input stream.

Also, I would declare the pos and neg variables as integers as that is what you're supposed to be counting.

To get a definite number you just use a counter, which is a variable specifically used for counting.

Your code should similar to the one below
[solution removed]

Winston Gutkowski

Joined: Mar 17, 2011
Posts: 8837

Bat Boy wrote:Your code should similar to the one below...

Bat Boy,

First: Welcome to JavaRanch.

Second: Please don't post complete solutions; especially in the "Beginning Java" area. If you read at the top of the forum, it says:
"We're all here to learn, so when responding to others, please focus on helping them discover their own solutions, instead of simply providing answers."
You'll notice that I've removed yours.

I'm sure your intentions were great, but we prefer to help people to find their own way, rather than just spoon-feeding them.

I suggest you read the HowToAnswerQuestionsOnJavaRanch (←click) page. It explains all about the ethos of this site.



Bats fly at night, 'cause they aren't we. And if we tried, we'd hit a tree -- Ogden Nash (or should've been).
Articles by Winston can be found here
Bat Boy

Joined: Apr 20, 2013
Posts: 2
Okay, i'll keep this in mind in future posts. Thank you.
I agree. Here's the link:
subject: Number counting Problem
It's not a secret anymore!