## katbury

I am trying to code a math tutor program that will have random numbers generated. Any suggestions would be greatful.

Output suppose to be:
I am having problems with this code. I keep switching it around and can not seem to get it right. This is what output suppose to be:

2. Subtraction
3. Multiplication
4. Quit.

Enter the number of the operation to try (1-4)? 2

What is 6 - 8 ? 2
No, the correct answer is: -2

2. Subtraction
3. Multiplication
4. Quit.

Enter the number of the operation to try (1-4)? 3
What is 3 x 4 ? 12
Yes, that is correct. Good job!
2. Subtraction
3. Multiplication
4. Quit.

Enter the number of the operation to try (1-4)? 6
(BEEP) Input value is out of range.
Enter the number of the operation to try (1-4)? 4
Program Complete

``````#include <stdio.h>
#include <stdlib.h>

#define SENT 4 //"Quit" menu choice

/*  Function Prototypes */

void Gen2Rand (int*r1, int*r2);
void DrillOneProb (int*c, int*r1, int*r2);

/*============Mainline Procedures===============*/

int main (void);

int   r1,  //First Random Integer:  2-12 inclusive
r2;  //Second Randon Integer:  2-12 inclusive

/*===========CHILD FUNCTIONS===============*/

/*  Display Title and Menu */

{
printf("2. Subtraction.\n");
printf("3. Multiplication.\n");
printf("4. Quit.\n\n");

}

{
int c;
printf ("Enter the number of the operation to try (1-4):\n");
scanf ("%d", &c);
while
(c<1 || c>SENT)
printf("\aInput value is out of range.\n");

}

/* Generate and return 2 integers between 2-12 inclusive */

void Gen2Rand (int *r1p, int *r2p)

{
int c;
c=0;

if (c>=1 && c<SENT)

int r1; //First random number
int r2; //Second random number

r1 = 2 + rand() %11;
r2 = 2 + rand() %11;

*r1p = r1;
*r2p = r2;

printf("Program complete\n");

}

/* Display two random numbers and ask user what the answer would be after the chosen operation*/

void DrillOneProb (int*c, int*r1, int*r2)

{

printf("\nWhat is %d",*r1);
scanf("%d", r1);

*r1=2 + rand () % 11;

switch (c)

{
case '1':
printf("+");
CorAns = *r1 + *r2;

break;

case '2':
printf("-");
CorAns = r1 - r2;
break;

case '3':
printf("x");
CorAns = r1 * r2;
break;

}

if
{
printf("Yes, that is correct. Good Job!");
}

else
{    printf("No, the correct answer is: %d", CorAns);
printf("\n\n");
}
return (0);

}``````

## Grn Xtrm 84

There are problems with the main().
First there should be no semicolon after int main(void).
Secondly, you must ecnlose the text of the main() with curly braces {}.

## katbury

There are problems with the main().
First there should be no semicolon after int main(void).
Secondly, you must ecnlose the text of the main() with curly braces {}.

I already changed that, I ran my compiler and am having some problems with my switch case. The brace afterwards is coming up with error illegal type ointer to int in switch. Also the Reply = CorAns is coming up with found 'Reply' expected (.

Can anyone look at this part and tell me what is wrong.

## Grn Xtrm 84

Line 127 must be enclosed in parentheses. I'd combine lines 126 and 127 into the following

``if(Reply == CorAns)``

## melepuram

change case '1': to case 1: