U E D R , A S I H C RSS

새싹교실/2015/수업시작은5시반/0417

참가자

강사 유재범
새싹 우승진 출석
송준호 출석
동완 출석

수업 내용

  • 중간고사 대비

과제방

  • 소수 출력
    • 입력받은 정수 이하의 소수의 갯수와 소수들을 출력하는 프로그램
    • 자연수 외의 입력은 모두 예외 처리
    • 게임은 끝나지 않는다. 사용자가 끝내기 전까지는....
  • 구십구단 퀴즈
    • 2 ~ 19까지 랜덤의 두 수를 선정하여 구구단 퀴즈를 출력한다.
    • 사용자는 5초 내로 값을 입력하지 않으면 안된다.
    • 게임은 총 n번 진행되어야 한다.(n은 코드상에서 상수로 미리 지정해 줘야 한다)
    • 5초 내에 사용자가 정답을 맞출 경우 (5 - t)(단위 : s)만큼의 점수가 가산된다.
    • 오답 혹은 시간 내에 정답을 맞추지 못할 경우 2점 감점된다.
    • 한 판(n번의 퀴즈)이 끝난다면 게임은 다시 시작되어야 한다. 사용자가 게임을 그만하길 원할 때까지....
    • 이 과제는 반드시 완료하기를 바란다. 왜냐하면 다음 시간에 이 과제를 이어서 진행할 것이기 때문이다.

송준호

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#pragma warning(disable:4996)

int main()
{
	int ran1 = 0, ran2 = 0, result = 0, retry = 0; // 랜덤 숫자 2개
	int inp = 0, point = 0; // 입력값, 점수

	//여기부터 게임 스타트


	do{
		for (int i = 1; i < 4; i++){

			ran1 = rand() % 18 + 2;
			ran2 = (int)(sqrt(ran1)) % 18 + 2;
			result = ran1*ran2;
			inp = 0;
			// 난수 생성했음

			clock_t start = clock();
			printf("%d 곱하기 %d는 무엇입니까?\n", ran1, ran2);

			scanf("%d", &inp);

			if ((clock() - start) / CLOCKS_PER_SEC > 5){
				printf("시간 초과\n");
				point -= 2;
			}

			if (inp == result){
				printf("정답입니다.\n");
				point = point + (5 - (clock() - start));
			}

			else if (inp !=result){
				printf("틀렸습니다.\n");
				point -= 2;
			}
			printf("%d번째 게임이었습니다.\n 당신의 점수는 %d점.\n", i, point);
		} // 점수내기

		printf("더 하려면 1, 아니면 0을 입력하세요.\n");
		scanf("%d", &retry);
	} while (retry = 1);
	printf("당신의 점수는 %d점입니다.\n", point);
	return 0;
}

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:56
Processing time 0.0140 sec