[C언어 코드업 문제풀이] CodeUp 1226 : 이번 주 로또

코드업 1226번 이번 주 로또 문제 풀이 해답입니다.

 

1. 문제 설명

 

주희는 로또 매니아다.

매주 로또 한장을 사고 토요일이면 대박을 기대하면서 당첨번호를 확인한다.

몇 주 전 주희는 로또 결과가 4등이었는데 확인을 잘못해서 5등인줄 알고 그냥 바꾸기 귀찮아서 버렸었다.

이러한 사태가 다시는 일어나지 않게 하기 위해 우리가 프로그램을 만들어 주자.

로또 순위 매기는 방법)

등수 방법
1등 당첨번호 6개 일치
2등 당첨번호 5개 일치 + 보너스번호 일치
3등 5개 번호 일치
4등 4개 번호 일치
5등 3개 번호 일치
2개 이하 일치

예)

13 23 24 35 40 45 7     ===> 로또 당첨번호 + 보너스 번호

 2  6  7 23  40 44      ====> 주희가 가진 로또 번호

따러서 주희는 "꽝"

 

2. 입력

 

첫 줄에 로또 당첨번호 6개와 보너스 번호 1개가 주어진다.

둘째 줄에 주희가 가지고 있는 로또 번호 6개가 주어진다.

 

3. 출력

 

주희의 당첨 결과를 출력한다.

출력방법) 

1등 = 1 출력, 2등 = 2 출력, 3등 = 3 출력, 4등 = 4 출력, 5등 = 5 출력, 꽝 = 0 출력

 

4. 입력 예시

 

13 23 24 35 40 45 7 2 6 7 23 40 44

 

5. 출력 예시

 

0

 

6. 문제 풀이

 

#include <stdio.h>
 
 
int main (void)
{
    
    int num1, num2 ,num3,num4,num5,num6,num7;
    scanf("%d %d %d %d %d %d %d",&num1, &num2, &num3, &num4, &num5 ,&num6 ,&num7);
    int lotto1, lotto2, lotto3, lotto4, lotto5, lotto6;
    scanf("%d %d %d %d %d %d",&lotto1, &lotto2, &lotto3, &lotto4, &lotto5 ,&lotto6 );
    int score = 0;
    if(num1 == lotto1 || num2 == lotto1 || num3 == lotto1 || num4 == lotto1 || num5 == lotto1 || num6 == lotto1){ score++;}
    if(num1 == lotto2 || num2 == lotto2 || num3 == lotto2 || num4 == lotto2 || num5 == lotto2 || num6 == lotto2){score++;}
    if(num1 == lotto3 || num2 == lotto3 || num3 == lotto3 || num4 == lotto3 || num5 == lotto3 || num6 == lotto3){score++;}
    if(num1 == lotto4 || num2 == lotto4 || num3 == lotto4 || num4 == lotto4 || num5 == lotto4 || num6 == lotto4){score++;}
    if(num1 == lotto5 || num2 == lotto5 || num3 == lotto5 || num4 == lotto5 || num5 == lotto5 || num6 == lotto5){score++;}
    if(num1 == lotto6 || num2 == lotto6 || num3 == lotto6 || num4 == lotto6 || num5 == lotto6 || num6 == lotto6){score++;}
    
 
    
    if(score == 6){printf("1");}
    else if((num7 == lotto1 || num7 == lotto2 || num7 == lotto3 || num7 == lotto4 || num7 == lotto5 || num7 == lotto6)&&score == 5){
        printf("2");
    }
    else if(score == 5){printf("3");}
    else if(score == 4){printf("4");}
    else if(score == 3){printf("5");}
    else{printf("0");}
    return 0;
}
 
 
 

 

    if(num1 == lotto1 || num2 == lotto1 || num3 == lotto1 || num4 == lotto1 || num5 == lotto1 || num6 == lotto1){ score++;}

    if(num1 == lotto2 || num2 == lotto2 || num3 == lotto2 || num4 == lotto2 || num5 == lotto2 || num6 == lotto2){score++;}

    if(num1 == lotto3 || num2 == lotto3 || num3 == lotto3 || num4 == lotto3 || num5 == lotto3 || num6 == lotto3){score++;}

    if(num1 == lotto4 || num2 == lotto4 || num3 == lotto4 || num4 == lotto4 || num5 == lotto4 || num6 == lotto4){score++;}

    if(num1 == lotto5 || num2 == lotto5 || num3 == lotto5 || num4 == lotto5 || num5 == lotto5 || num6 == lotto5){score++;}

    if(num1 == lotto6 || num2 == lotto6 || num3 == lotto6 || num4 == lotto6 || num5 == lotto6 || num6 == lotto6){score++;}

 

로또는 순서와 관계없이 숫자를 맞추는 게임입니다.

num1~6과 당첨번호1, num1~6과 당첨번호2 순으로 6개를 비교해주며 맞을 경우 스코어가 올라갑니다.

 

또한 else if((num7 == lotto1 || num7 == lotto2 || num7 == lotto3 || num7 == lotto4 || num7 == lotto5 || num7 == lotto6)&&score == 5) 보너스가 맞았을 경우도 만들어주고

스코어에 따른 등수를 입력해주면 됩니다.

 

 

댓글()