반응형
dackyy
대기의 연대기
dackyy
전체 방문자
오늘
어제
  • 분류 전체보기 (49)
    • java (7)
    • 코딩테스트 (23)
    • python (10)
    • Network (2)
    • Web (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 비교 연산자
  • TLS
  • https
  • 조건문
  • 비트 연산자
  • 시프트 연산자
  • 자료형
  • 참조 자료형
  • 산술 연산자
  • 연산
  • 기본 자료형
  • 배열
  • switch
  • 제어문
  • 배열생성
  • 반복문
  • 증감 연산자
  • java
  • SSL
  • 논리 연산자

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
dackyy

대기의 연대기

python

[Python] 로또 경우의 수 프로그램

2022. 7. 26. 16:58
반응형
import random

lucky = []

def lotto():
    while len(lucky) < 6:
        num = random.randint(1, 46)
        if num not in lucky:
            lucky.append(num)
    while True:
        num = random.randint(1, 46)
        if num not in lucky:
            bonus = num
            break
    print(lucky, "보너스번호 : ", bonus)
    return bonus


def findmy(my):
    cnt = 7
    for i in range(len(my)-1):
        if my[i] in lucky:
            cnt -= 1
    print(cnt)
    print(my[-1], bonus)
    if cnt == 1:
        print("1등 당첨!")
    elif cnt == 2 and my[-1] != bonus:
        print("왜?")
        cnt += 1
    if cnt < 6:
        print(cnt, "등 당첨!")
    else:
        print("꽝!")

    print("몇등 경우의 수를 보시겠습니까? :")
    cases(int(input()))


def cases(menu):
    if menu == 1:
        print(lucky)

    elif menu == 2:
        for i in range(0, len(lucky)):
            for j in range(len(lucky)):
                if i == j:
                    print(bonus, end=" ")
                else:
                    print(lucky[j], end=" ")
            print()

    elif menu == 3:
        for i in range(0, len(lucky)):
            for j in range(len(lucky)):
                if i == j:
                    print("X", end=" ")
                else:
                    print(lucky[j], end=" ")
            print()

    elif menu == 4:
        for i in range(0, len(lucky)):
            for j in range(i+1,len(lucky)):
                for k in range(len(lucky)):
                    if k == i:
                        print("X", end=" ")
                    elif k == j:
                        print("X", end=" ")
                    else:
                        print(lucky[k], end=" ")
                print()

    elif menu == 5:
        for i in range(0, len(lucky)):
            for j in range(i+1,len(lucky)):
                for k in range(j+1,len(lucky)):
                    for m in range(len(lucky)):
                        if m == i:
                            print("X", end=" ")
                        elif m ==j:
                            print("X", end=" ")
                        elif m == k:
                            print("X", end=" ")
                        else:
                            print(lucky[i], end=" ")
                    print()

bonus = lotto()
mylucky = list(map(int, input("로또 번호를 입력해주세요 : ").split(' ')))

findmy(mylucky)
반응형

'python' 카테고리의 다른 글

[Python] 코딩도장 심사문제 13~24  (0) 2022.07.27
[Python] 몰입형 코딩도장 3~12 심사문제  (0) 2022.07.27
[Python] 다양한 별찍기 (while문)  (0) 2022.07.26
[Python] 다양한 별찍기 (for문)  (0) 2022.07.26
[python] 사칙연산 계산기  (0) 2022.07.26
    'python' 카테고리의 다른 글
    • [Python] 코딩도장 심사문제 13~24
    • [Python] 몰입형 코딩도장 3~12 심사문제
    • [Python] 다양한 별찍기 (while문)
    • [Python] 다양한 별찍기 (for문)
    dackyy
    dackyy

    티스토리툴바