새싹교실/2014/속도위반/0516 (rev. 1.4)
- 참여자
- 배열의 응용
- 다음 수업 : 5월 23일 금요일 오후 6시
- 1. 행렬 A를 입력받아 A^T(transpose)를 출력하는 프로그램을 만드시오.
- 기본적으로 행렬 A는 5X5 행렬.
- 처음 실행시 행렬의 크기도 입력받게 해서 만들어 본다면 상을 줄게요.
- 2. Tic-Tac-Toe 게임
- 3X3 행렬에서 먼저 한 줄을 본인의 말로 완성하면 이기는 게임
- 기본적으로 rand함수를 이용해 컴퓨터의 말의 위치를 선택
- 컴퓨터에 AI를 내장한다면 상을 줄게요.
#include<stdio.h>
#pragma warning(disable:4996)
int trans[5][5]={0, };
int num1=0, num2=0;
int main()
{
printf(" 1 2 3 4 5 \n");
printf(" ┌─┬─┬─┬─┬─┐\n");
printf("1│ │★│ │ │ │\n");
printf(" ├─┼─┼─┼─┼─┤\n");
printf("2│ │ │ │ │ │\n");
printf(" ├─┼─┼─┼─┼─┤\n");
printf("3│ │ │ │ │ │\n");
printf(" ├─┼─┼─┼─┼─┤\n");
printf("4│ │ │ │ │ │\n");
printf(" ├─┼─┼─┼─┼─┤\n");
printf("5│ │ │ │ │ │\n");
printf(" └─┴─┴─┴─┴─┘\n\n");
printf("표의 ★는 (1,2)좌표를 나타내는 것입니다.\n\n");
for(num1=0;num1<5;num1++)
{
for(num2=0;num2<5;num2++)
{
printf("(%d,%d)의 숫자를 입력하세요.\n", num1+1, num2+1);
scanf("%d", &trans[num1][num2]);
}
}
system("pause");
system("cls");
printf(" 1 2 3 4 5 \n");
printf(" ┌─┬─┬─┬─┬─┐\n1│");
for(num2=0;num2<5;num2++)
{
num1=0;
printf("%2d│", trans[num1][num2]);
}
for(num1=1;num1<5;num1++)
{
if(num2=4)
{
printf("\n ├─┼─┼─┼─┼─┤\n%d│", num1+1);
}
for(num2=0;num2<5;num2++)
{
printf("%2d│", trans[num1][num2]);
}
}
printf("\n └─┴─┴─┴─┴─┘\n\n");
printf(" ↓\n\n");
printf(" 1 2 3 4 5 \n");
printf(" ┌─┬─┬─┬─┬─┐\n1│");
for(num2=0;num2<5;num2++)
{
num1=0;
printf("%2d│", trans[num2][num1]);
}
for(num1=1;num1<5;num1++)
{
if(num2=4)
{
printf("\n ├─┼─┼─┼─┼─┤\n%d│", num1+1);
}
for(num2=0;num2<5;num2++)
{
printf("%2d│", trans[num2][num1]);
}
}
printf("\n └─┴─┴─┴─┴─┘\n\n\n");
system("pause");
return 0;
}