Programming is about partitioning problems. In this case, you can divide the assignment into four parts.

1) Keep reading numbers until you reach end-of-file (achieved on the Win32 console by pressing Ctrl+Z). For this, you need a loop that runs while you can still read numbers. Tip: "while you can still read numbers" can be expressed as

Code:

`double num;`

while(cin >> num) {

}

This snippet is somewhat tricky, which is why I'm giving it to you. It does the following:

a) At the start of every loop iteration, it reads a number - that's the cin >> num part.

b) The cin >> num part not only fills num with the number read, but it also can be used like cin alone. (That's why you can chain input statements, like cin >> num1 >> num2 - here you use (cin >> num1) like cin itself, making this equivalent to cin >> num1; cin >> num2;.)

c) cin in the condition of an if or while means "is cin still usable?" cin is usable as long as it succeeds in reading numbers; it becomes unusable when it fails to read one. So while(cin >> num) effectively means, "loop as long as you succeed in reading numbers". Hey, that's exactly what we started with!

2) Ignore all numbers outside the range [0,100]. For this you need a single if inside the loop.

3) Calculate the mean of all numbers entered.

4) Calculate the minimum and maximum of all numbers entered.

Since you presumably don't know about vectors yet (and also for efficiency reasons) you want to achieve parts 3 and 4 without saving every single number entered. So you need to come up with a way to do these one number at a time. (Hint: how would you calculate the mean of a set of numbers? The minimum and maximum?)

Commenting on what you have so far:

1) EOF has no place in this program. It's something that belongs with C-style I/O, which you're not using.

2) You break the loop if the number is outside the range. Not good, since you're supposed to ignore them, not stop the program.

3) You test the number before ever reading a value.