Jump to content
  • Advertisement
Sign in to follow this  
hothead

Best way to do a loop with numbers 1,2,3

This topic is 5468 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

hi I've been programming for a few days and i wanted to try a loop with the numbers 1,2,3 this is all i can think of
#include<iostream>

using namespace std;
int main()

int num;
{
        cout<<"enter a 1,2 or 3 to quit\n";
    if(num=1)
        cout<<"now enter 2 or 3 to quit\n";
    if(num=2)
        cout<<"now enter 1 or 3 to quit\n";
    if(num=3)
       cin>>num;
    return 0;
}
but i know that its wrong.

Share this post


Link to post
Share on other sites
Advertisement
what exactly are you trying to do? Have them entered in sequence? Have them all entered? Have just one entered? What is the goal of the code.

I am trying to figure out the flow of your code, and it seems pretty wishy-washy...which is completely understandable for a few day old coder. If you could give us a little more information on what you want, I am sure we can help you out no problem!

Share this post


Link to post
Share on other sites
Still not enough info.

Present us what you want in the way you want the flow of the program to go. For example, if you want the user to have to press 1, 2, and then 3 to quit, tell us just that.

If you want them to press just one of the above to quit, tell us. What do they need to hit...EXACTLY...to quit.

Think about how you want it executed, then try writing the code.

Share this post


Link to post
Share on other sites
Quote:
Original post by hothead
What I want to do is make a never ending loop where you keep pressing 1 and 2 or 3 to exit the program.


To make a loop, you first need a loop statement, like for, while or do/while. Look that up.

Additionally, in C++, local variable definitions do not go in between the function name and the function's braces (hey, it's not Pascal, OK?), so move your int num; into the block.

Finally, beware, in C++, num=1 is an assignment, which will evaluate to whatever value you assigned (1 is non-zero, thus true and the 'test' always succeeds), num==1 is a test, which is probably what you want.

Share this post


Link to post
Share on other sites

#include <iostream>

int main(){
int input;
do{
cout << "Input 1, 2, or 3. 3 will quit: ";
cin >> input;
}while(input != 3)
cout << "You input 3! Quitting!"
return 1;
}



That is a do/while loop. It always runs atleast once. You get the user input, and if it does not equal 3, it keeps looping to get input again. If it does equal three, the while loop quits, and it outputs the user input 3, and quits.

Now be wary of what Fruny said. He made some good points.

Share this post


Link to post
Share on other sites
i think he just wanted a sort of "mind game", you put in 1, they ask for 2 or 3, you put in 2, it asks for 1 or 3, etc.. it just keeps on making you go in circles. this is how to do it:


#include <iostream>
using namespace std;

int main()
{
bool done = false;

int num;
cout << "Enter 1, 2, or 3" <<endl;
cin >> num;

while(!done)
{
if(num == 1)
{
cout << " Enter 2 or 3 "<<endl;
cin >> num;
}
else if(num == 2)
{
cout << " Enter a 1 or 3 "<<endl;
cin >> num;
}
else
{
cout<< " Enter a 1 or 2 "<<endl;
cin >> num;
}
}

return 0;
}



Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!