이번 포스팅은 주사위를 100번 던졌을 때, 각각의 면이 몇 번 나왔는지를 보여주는 코드를 작성해보았습니다.
각각의 면에 횟수를 기록해야 하므로 이는 정적 지역변수 static을 활용하여 구현하였습니다.
마지막으로 100회가 되면 for 반복문이 종료가 되고,
각각의 면 횟수가 출력되도록 하였습니다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int get_dice_face(); // 주사위 난수 함수
int count_num1(); // 1번 횟수
int count_num2(); // 2번 횟수
int count_num3(); // 3번 횟수
int count_num4(); // 4번 횟수
int count_num5(); // 5번 횟수
int count_num6(); // 6번 횟수
int main(void)
{
int i, num;
int count1 = 0;
int count2 = 0;
int count3 = 0;
int count4 = 0;
int count5 = 0;
int count6 = 0;
for (i = 0; i < 100; i++)
{
num = get_dice_face();
if (num == 1)
{
count1 = count_num1();
}
else if (num == 2)
{
count2 = count_num2();
}
else if (num == 3)
{
count3 = count_num3();
}
else if (num == 4)
{
count4 = count_num4();
}
else if (num == 5)
{
count5 =count_num5();
}
else
{
count6 = count_num6();
}
}
printf("1->%d\n2->%d\n3->%d\n4->%d\n5->%d\n6->%d\n",
count1, count2, count3, count4, count5, count6);
return 0;
}
int get_dice_face()
{
return rand() % 6 + 1;
}
int count_num1()
{
static int count;
count++;
return count;
}
int count_num2()
{
static int count;
count++;
return count;
}
int count_num3()
{
static int count;
count++;
return count;
}
int count_num4()
{
static int count;
count++;
return count;
}
int count_num5()
{
static int count;
count++;
return count;
}
int count_num6()
{
static int count;
count++;
return count;
}
그럼 오늘도 즐거운 코딩!
반응형
'코딩 | 개념 정리 > C' 카테고리의 다른 글
[C언어] 난수생성의 rand() 라이브러리 정복하기 (0) | 2021.04.19 |
---|---|
[C언어] 로그인 비밀번호 검사하기 (0) | 2021.04.19 |
[C언어] 각 연산의 횟수를 기억하는 계산기 (0) | 2021.04.17 |
[C언어] %f와 ,%lf의 차이점은?? (2) | 2021.04.14 |
[C언어] 함수를 활용해 소득세 계산하기 2 (0) | 2021.04.14 |