Thread: For loop help

Results 1 to 2 of 2
  1. #1
    ANONlMOUS's Avatar
    Join Date
    Jun 2014
    Gender
    male
    Posts
    445
    Reputation
    16
    Thanks
    12
    My Mood
    Inspired

    Question For loop help

    Prompt:

    1. generate 3 random numbers
    2. add 1 to inside count if the second random number is greater than the first random number and less than the third random number
    3. add 1 to outside count if the second random number is less first random number
    4. add 1 to outside count if the second random number is greater than the third random number
    5. add 1 to loop count.
    repeat step 1 to 5 until inside count + outside count = maximum count using a for loop
    the best solution uses 1 multi-way if statement with compound conditions to determine when to add 1 to inside count and outside count

    My attempt:

    #include <ctime>
    #include <iomanip>
    #include <iostream>
    #include <random>
    #include <string>
    using namespace std;

    int main()
    {
    const int ubound = 99;
    const int lbound = 10;
    uniform_int_distribution<int> u(lbound, ubound);
    int seed = 0;
    //int seed = (int)time(nullptr);
    default_random_engine e(seed);

    int outside_count = 0;
    int inside_count = 0;
    int loop_count = 0;
    int max_count = u(e);
    int n1, n2, n3;

    while (inside_count + outside_count < max_count)
    {
    n1 = u(e);
    n2 = u(e);
    n3 = u(e);
    loop_count++;
    cout << setw(3) << loop_count << ": (" << n1 << ", " << n2
    << ", " << n3 << ") inside:" << setw(2) << inside_count << " outside: " << setw(2) << outside_count << endl;
    for (n2 = u(e); (n2 > n1 && n2 < n3); inside_count = inside_count + 1)
    {
    //inside_count = inside_count + 1;
    cout << inside_count << endl;
    }

    {
    for (n2; ((n2 < n1) || (n2 > n3)); outside_count = outside_count + 1)
    cout << outside_count << endl;
    }
    /*else if ((n2 < n1) || (n2 > n3))
    {
    outside_count = outside_count + 1;
    cout << outside_count << endl;
    }
    /*else if (n2 > n3)
    {
    outside_count = outside_count + 1;
    cout << outside_count<<endl;
    }
    */
    loop_count = loop_count + 1;
    cout << outside_count << endl;
    cout << max_count << endl;
    cout << inside_count;


    }

    system("pause");
    return 0;
    }
    Can someone please help me?

  2. #2
    gogogokitty's Avatar
    Join Date
    Feb 2013
    Gender
    male
    Posts
    1,090
    Reputation
    113
    Thanks
    3,507
    next time please put your code in the code tags.

    im assuming your asking for something like this, everytime the program loops, n1/n2/n3 generate a random number for themselves, uses a for loop with if statements inside to determine the addition to the inside_count/outside_count, if those 2 numbers combined is greater than max_count then the loop will end.

    Code:
    #include <ctime>
    #include <iomanip>
    #include <iostream>
    #include <random>
    #include <string>
    using namespace std;
    
    int main()
    {
    	srand(time(NULL));//make a random seed(i think its called a seed)
    	const int ubound = 99;//not needed
    	const int lbound = 10;//not needed
    	uniform_int_distribution<int> u(lbound, ubound);//not needed
    	int seed = rand();//not needed
    					  //int seed = (int)time(nullptr);//not needed
    					  //default_random_engine e(seed);//not needed
    
    	int outside_count = 0;
    	int inside_count = 0;
    	int loop_count = 0;
    	int max_count = 100;
    	int n1, n2, n3;
    
    	cout << "maxCount: " << max_count << endl << endl;
    
    	//run while inside_count + outside_count is less than max_count, increment loop_count on each run
    	for (; inside_count + outside_count < max_count; loop_count++)
    	{
    		//get random numbers for n1/n2/n3 on each run
    		n1 = rand();
    		n2 = rand();
    		n3 = rand();
    
    		cout << setw(3) << loop_count << ": (n1: " << n1 << ", n2: " << n2
    			<< ", n3: " << n3 << ") inside:" << setw(2) << inside_count << " outside: " << setw(2) << outside_count << endl << endl;
    
    		if (n2 > n1 && n2 < n3)//if n2 is greater than n1 and less than n3 increment inside_count by 1
    			inside_count += 1;
    		if (n2 < n1)//if n2 is less than n1 increment outside_count by 1
    			outside_count += 1;
    		if (n2 > n3)//if n2 is greater than n3 increment outside_count by 1
    			outside_count += 1;
    	}
    
    	system("pause");//with visual studio, press CTRL + F5 and the window will hold itself open without the need for this line
    	return 0;
    }
    LEEEEEEROY JEEEEENKINS

Similar Threads

  1. [Help] Help Me For Loop .
    By azamsadin in forum Blackshot Coding & Source Code
    Replies: 8
    Last Post: 04-19-2016, 03:12 PM
  2. [Help Request] Looking for Serious Help
    By kittens4life in forum Combat Arms Coding Help & Discussion
    Replies: 5
    Last Post: 01-11-2013, 08:15 AM
  3. [Help Request] aim assist for pblackout help pls
    By bigx270 in forum Piercing Blow Help
    Replies: 0
    Last Post: 05-12-2012, 07:17 PM
  4. [Help Request] PLZ im dying for your help
    By ihack4 in forum CrossFire Help
    Replies: 3
    Last Post: 08-07-2011, 10:07 AM
  5. [HELP]"for" loop
    By Drake in forum C++/C Programming
    Replies: 4
    Last Post: 02-20-2011, 05:26 AM

Tags for this Thread