Solved

Breaking from a do loop when a condition is not met

Posted on 2014-01-26
4
284 Views
Last Modified: 2014-01-26
I need to continue a do loop until a condition is met:

          // Get random Flop1 card
            string strImageName = "";
            int intCardNumber = 0;
            do
            {
                Random random = new Random();
                intCardNumber = random.Next(1, 27);
                strImageName = arrCards[intCardNumber, 0] + "Full";
 
// if condition 1 is true or condition 2 is true, then break out of the loop.
// condition 1 (txtHole1.Text != strImageName)
// condition 2  (txtHole2.Text != strImageName)

             
 if ((txtHole1.Text != strImageName) || (txtHole2.Text != strImageName)) // Make sure that Hole1 or Hole2 and strImageName are not the same
                {
                    break;  // do not get a new random number.
                }
            } while ((txtHole1.Text != strImageName) || (txtHole2.Text != strImageName));

// Does not break when Condition 1 or Condition 2 is false.

Please help.

Thanks,
0
Comment
Question by:Dovberman
  • 3
4 Comments
 
LVL 40

Accepted Solution

by:
Jacques Bourgeois (James Burger) earned 500 total points
ID: 39810360
You must think like a computer.

What is OR for you should often be translated to AND for the computer.

What you are doing is to loop as long as one of the conditions is true. So if only one is false, the loop goes on.

What your need to do is to loop as long as both are true. So when one is false, the loop will stop.

Replace || by &&.
0
 

Author Comment

by:Dovberman
ID: 39810384
if ((txtHole1.Text != strImageName) && (txtHole2.Text != strImageName)) // Make sure that Hole1 or Hole2 and strImageName are not the same
                {
                    break;  // do not get a new random number.
                }
            } while ((txtHole1.Text != strImageName) && (txtHole2.Text != strImageName));

Yes, this makes sense.  I will try it and give you feedback.

Thanks,
0
 

Author Comment

by:Dovberman
ID: 39810409
Yes, that works.

Thanks,
0
 

Author Closing Comment

by:Dovberman
ID: 39810410
Thanks
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now