/* 4x4 빙고판 만들기
*/
#include "stdafx.h"
#include <stdio.h>
#include <random>
using namespace std;
int main()
{
random_device rn;
mt19937_64 rnd(rn());
uniform_int_distribution<int> range(0, 4);
int bingo[5][5] = { 0 };
int dx = 0, dy = 0;
int dx2 = 0, dy2 = 0;
int count = 1;
int tmp = 0;
int inputkey = 0;
int finish = 0;
int bingoline = 0;
// 배열에 숫자 넣기
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
bingo[i][j] = count++;
}
}
// 빙고판 섞기
for (int k = 0; k < 10000; k++) {
dx = range(rnd);
dy = range(rnd);
dx2 = range(rnd);
dy2 = range(rnd);
tmp = bingo[dx][dy];
bingo[dx][dy] = bingo[dx2][dy2];
bingo[dx2][dy2] = tmp;
}
while (1) {
system("cls");
printf("■■■■■■■■");
printf("\n■ Bingo ■");
printf("\n■■■■■■■■\n");
// 빙고판 출력
for (int x = 0; x < 5; x++) {
for (int y = 0; y < 5; y++) {
if (inputkey == bingo[x][y]) {
bingo[x][y] = 0;
printf(" ■");
}
else
{
if (bingo[x][y] == 0)
{
printf(" ■");
}
else
{
printf("%3d", bingo[x][y]);
}
}
}
printf("\n");
}
printf("■■■■■■■■\n");
printf("※ 마킹 할 숫자를 입력하세요 : ");
scanf_s("%d", &inputkey);
//빙고 라인 체크
printf("%d 라인, 빙고 완성 ※");
//빙고 승리! (5라인)
if (finish == 1) {
system("cls");
printf("※ 축하합니다. 빙고 완성 ※");
}
}
return 0;
}
'Study > C' 카테고리의 다른 글
C언어 - 배열 (Atoi함수사용 없이 문자열 > 상수형 구현) (0) | 2018.08.27 |
---|---|
C언어 - 배열 (LED 켜기 게임) (0) | 2018.08.27 |
C언어 - 배열 (2차원배열) (0) | 2018.08.24 |
C언어 - 배열 (로또번호 난수발생기) (0) | 2018.08.24 |
C언어 과제1 (0) | 2018.08.21 |