파이썬 기초 질문드립니다.


  • Level 3

    임의의 숫자를 입력받아서
    Even,Odd,Even+Odd 셋으로된 새로운 수를 만들고
    그 과정을 계속 반복해서 마지막 매직넘버 123 이되면 종료되는 프로그램을 짜는 중입니다.

    현재 작성한 코드는
    make = 0
    number = input()
    while make != 1:
    pieceOfCake()

    def pieceOfCake(number):
    lst = [int(i) for i in number]
    print(lst)
    for i in range(len(lst)):
    if lst[i] % 2 > 0:
    odd+=1;
    else:
    even+=1;
    lst = [even,odd,even+odd]
    odd = 0
    even = 0
    return lst[2];

    인데 더이상 나아가기가 힘드네요.. 파이썬을 처음배워서 오류가 계속 나고 도움부탁드립니다.

    (예시)
    Input:
    886328712442992

    Output:
    10515
    145
    123

  • Level 4

    아래와 같이 작성가능했습니다.
    임의의 정수를 받으려면 input()을 사용하면 됩니다.

    nums = "886328712442992"
    
    while nums != "123":
        result = [0, 0, 0]
    
        for num in nums:
            if int(num) % 2 == 0:
                result[0] += 1
    
            else:
                result[1] += 1
    
        result[2] = result[0] + result[1]
        nums = ''.join(map(str, result))
        print(result)
        print(nums)
    

ONLINE USERS

POPULAR TOPICS

SUGGESTED TOPICS