Beginnings of a Scattergories program I wrote this program as a start towards implementing the game Scattergories.  I had a problem with the _sleep command so I used Sleep in the windows.h library.

Eventually, I would like to add a way to either check if a word is correct, or to suggest words, and to activate a sound when the timer is done.

// A program to keep track of points and time and to give a random letter for the game scattergories

#include&lt;iostream&gt;
#include&lt;Windows.h&gt;
using std::cout;
using std::cin;

void ltr()    //gives a random letter
{
    char letter;
    letter = rand() % 27 + 64;         //assigns a random letter in ascii code to a char (resulting in a random letter)
    cout &lt;&lt; "The letter is " &lt;&lt; letter &lt;&lt; "\n";
}

void clock()   //timer
{
    cout &lt;&lt; "You got 1.5 minutes to finish\n";
    for (int i = 90; i &gt; 0; i--)
    {
        if (i % 5 == 0)
            cout &lt;&lt; i &lt;&lt; "\n";
        Sleep(1000);
    }
    cout &lt;&lt; "DING DONG!!! DING DONG!!! Time's up!!!\n";
}

int points()        //points per round
{
    int a, b, c, sum;
    cout &lt;&lt; "How many sections only you got?\n";          //worth 15 points
    cin &gt;&gt; a;
    cout &lt;&lt; "How many words only you got?\n";       //worth 10 points
    cin &gt;&gt; b;
    cout &lt;&lt; "How many words you and another person got?\n";    //worth 5 points
    cin &gt;&gt; c;
    sum = a * 15 + b * 10 + c * 5;
    return sum;           //Note: It doesn't matter how many sections there are.
}

int act()
{
    int Points;
    ltr();
    clock();
    Points=points();
    cout &lt;&lt; "You have earned " &lt;&lt; Points &lt;&lt; " this round\n\n";
    return Points;
}

int main()
{
    int Points;
    cout &lt;&lt; "Starting in five seconds\n";
    Sleep(5000);
    Points = act();
    for (;;)          //inf loop
    {
        int ph;
        cout &lt;&lt; "Press 1 to continue or 2 to stop\n";
        cin &gt;&gt; ph;
        if (ph == 1)
        {
            Points += act();
        }
        else
        {
            break;
        }
    }
    cout &lt;&lt; "You have earned a total of " &lt;&lt; Points &lt;&lt; " great job!\n\n";
    system("pause");
}
Use portable code as much as possible

You should avoid 

#include &lt;Windows.h&gt;


when you can use portable c++ features (according the current c++ standard) instead:

Sleep(1000);


should be 

std::this_thread::sleep_for(1s); // needs to #include &lt;thread&gt;


As you see that's much more readable, and will compile on other operating system environments as well.

Use a better random number generator

letter = rand() % 27 + 64; 


Doesn't provide a good random number generator (besides you missed to initialize the seed with srand() and your program will produce the same sequence of random numbers with every run).

C++ provides easy to use and configurable (regarding the wanted number distribution requirements) random generators like listed here.

Do not use system("pause");

Besides that statement isn't portable again, it introduces security problems. If there's a program existent and accessible at the system called pause that doesn't do what's intended (but some malicious things instead), that one will be executed.

If you wan't to wait for some input rather use std::cin &gt;&gt; dummy; or such.

Check the state of input operations

 cin &gt;&gt; ph;


You never checked that the user inputted a valid number. If something like xxxx is entered, your loop will never stop.

Better do something like:

bool stop = false;
do
{
    int ph;
    cout &lt;&lt; "Press 1 to continue or 2 to stop\n";
    if(cin &gt;&gt; ph) {
         if (ph == 1)
         {
             Points += act();
         }
         else if(ph == 2)
         {
             stop = true;
         }
    }
    else {
         cin.clear();
         std::string dummy;
         std::getline(cin,dummy); // Consume the invalid input
    }
} while(!stop);





  I would like to add a way to either check if a word is correct, or to suggest words but it would mean I need to connect it to a dictionary of some sort (which I don't know how to do).


You can use std::map or std::unordered_map to create dictionaries.

I can't give you any sample code how to integrate these in your program, since it's unclear for me how you wan't to make use of these exactly.