정답을 나타내는 0~9 사이의 서로 다른 정수 3개를 입력 받음
정답을 추측한 0~9 사이의 서로 다른 정수 3개를 입력 받아 스트라이크 개수와 볼의 개수를 출력(정답을 맞힐 때까지 반복)
-스트라이크 개수 : 값도 맞추고 위치도 맞춘 숫자의 개수
-볼 개수 : 값은 맞췄지만, 위치는 틀린 숫자의 개수
※전역 변수 및 함수 - 정답은 전역 변수에 저장※ count_strike 함수 정의 및 사용 - 인자는 추측 값을 나타내는 세 개의 정수, 반환형은 int - 정답과 추측을 비교하여 strike 개수를 반환※ count_ball 함수 정의 및 사용 - 인자는 추측 값을 나타내는 세 개의 정수, 반환형은 int - 정답과 추측을 비교하여 ball 개수를 반환※ main함수 - 각각의 추측에 대해 위 함수를 이용하여 strike와 ball의 개수를 얻고, 결과 값 출력
#include<stdio.h>
int a,b,c; //전역 변수 선언
int count_strike(int x,int y,int z){
int ans=0;
if(x==a)ans++;
if(y==b)ans++;
if(z==c)ans++;
return ans;
}
int count_ball(int x,int y,int z){
int ans=0;
if(x==b)ans++;
if(x==c)ans++;
if(y==c)ans++;
if(z==a)ans++;
return ans;
}
int main(){
int x,y,z;
scanf("%d %d %d",&a,&b,&c);
while(1){
scanf("%d %d %d",&x,&y,&z);
printf("%dS%dB\n",count_strike(x,y,z),count_ball(x,y,z));
if(x==a&&y==b&&z==c) break;
}
return 0;
}
'프로그래밍 공부 > C' 카테고리의 다른 글
2024.04.24 9장 포인터 (0) | 2024.04.24 |
---|---|
[C언어] 정수를 문자열로 변환하기 (0) | 2020.11.07 |
2020.01.07 8장 함수 (2) | 2020.11.04 |
[C언어] 버블 정렬(가장 작은 수부터 큰 수까지 오름차순으로 정렬) (0) | 2020.11.04 |
2020.01.06 7장 배열 (0) | 2020.11.04 |