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

#define RANGE   9

int     rand_int(void);

main()
{
        int     seed;                  /* seed value for rand() */
        int     flag;                  /* for scanf */
        int     redo;
        int     number1, number2;
        int     result;
        int     answer;

        seed = (int)time(NULL);
        srand(seed);

        flag = 1;
        redo = 1;

        while ((flag == 1) && (redo == 1)) {
               printf("\n구구단 테스트 프로그램\n");

               number1 = rand_int();
               number2 = rand_int();
               result = number1 * number2;

               printf("%d X %d = ? ", number1, number2);
               flag = scanf("%d", &answer);
       
               if (flag == 1) {
                       if (result == answer) {
                              printf("정답입니다.\n");
                       }
                       else {
                              while ((flag == 1) && (result != answer)) {
                                      printf("오답입니다. 다시 입력하세요. ");
                                      flag = scanf("%d", &answer);
                              }
       
                              if (flag != 1) {
                                      printf("잘못된 입력입니다.\n");
                              }
                              else {
                                      printf("정답입니다.\n");
                              }
                       }
                      
                       if (flag == 1) {
                              printf("계속 하시려면 1을 입력하세요. ");
                              flag = scanf("%d", &redo);
                       }
               }
               else {
                       printf("잘못된 입력입니다.\n");
               }
        }
}

int rand_int(void)
{
        return(rand() % RANGE + 1);
}