초보자를 위한 5가지 코딩 과제(Python 솔루션 포함)

다음은 최근에 접한 재미있는 초보자 친화적인 코딩 문제입니다. 이 기사가 이해를 향상시키고 학습 동기를 부여하는 데 도움이 되기를 바랍니다.

1. 문자열의 정수 수

문자열이 주어지면 존재하는 정수의 수를 반환합니다. 예를 들어 "내가 가장 좋아하는 숫자는 17과 30입니다"라는 문자열에는 2개의 정수가 있습니다.

팁:
  • 문자열을 개별 단어로 나눕니다.
  • Python의 내장 함수를 사용하여 각 단어의 유형을 확인합니다.

  • 해결책:

    def num_of_integers(str):
    
        count = 0 # initialise count
    
        str = str.split() # split the string into list of words
    
        for i in range(len(str)):
            if(str[i].isdigit()): #check if the word is an integer
                count += 1 # increment count
    
        return count
    
    print(num_of_integers("My favourite number is 17 and 30"))
    



    2. 회문 체커
    입력이 소문자라고 가정하고 주어진 단어가 회문(예를 들어 "bob", "abba", "radar"와 같이 앞뒤로 읽는 단어가 같은 단어)인지 확인하는 함수를 작성하십시오.

    해결책:

    # Method 1: Iterative solution
    def palindrome(str):
        for i in range(int(len(str) / 2)):
            if (str[i] == str[len(str)-1]):
                return True
        return False
    
    # Method 2: Using Python's built in function
    def palindrome(str):
        return str == str[::-1] # compares the string and its reverse
    



    3. 두 개의 목록을 압축합니다.

    Python의 내장zip() 함수를 복제하는 사용자 정의 zip 함수를 작성합니다.



    해결책:

    def custom_zip(list1, list2):
        result = []
        for i in range(len(list1)):
            result.append((list1[i], list2[i]))
        return result
    
    print(custom_zip([0, 1, 2, 3],[5, 6, 7, 8]))
    
    



    4. 계단 인쇄
    양의 정수 n이 주어지면 "#"과 공백을 사용하여 n의 높이와 너비의 계단을 인쇄하십시오. 아래에 예가 나와 있습니다.

    n = 4
    #
    ##
    ###
    ####
    


    팁:
  • 사용 for 루프
  • 각 행에 원하는 "#"및 공백 수를 생각하십시오
  • .

    해결책:

    def staircase(n):
        for i in range(n):
            for x in range(i+1):
                print("#", end = "") 
            for y in range(n-i-1):
                print(" ", end = "")
            print()
    
    staircase(4)
    


    설명:
  • 첫 번째 행에 1개의 "#"및 (n - 1) 공백이 필요합니다. 두 번째 행에는 2개의 "#"및 (n - 2) 공백 등이 필요합니다...
  • 중첩된 for 루프는 각 줄에 "#"및 공백을 표시하는 데 사용됩니다.
  • 각 줄이 완료되면 외부 루프로 이동한 후 다음 줄을 인쇄합니다.



  • 5. 재귀 파스칼의 삼각형

    행과 열 번호가 주어지면 아래와 같이 파스칼의 삼각형에서 지정된 행과 열의 해당 값을 반환하는 재귀 함수를 작성합니다.



    팁:
  • 값은 삼각형의 각 위치의 왼쪽과 오른쪽 바로 위에 있는 두 숫자를 더하여 형성됩니다.
  • 고려해야 할 몇 가지 기본 사례가 있습니다.
  • 열 수가 행 수보다 크지 않아야 합니다.

  • 해결책:

    def pascal_triangle(row, col):
        if (row >= col):
            if (col == 0 or row == 0 or row == col):
                return 1
            else:
                return pascal_triangle(row-1, col-1) + pascal_triangle(row-1, col) 
        else:
            return 0
    
    print(pascal_triangle(3,0))
    print(pascal_triangle(3,1))
    print(pascal_triangle(3,2))
    print(pascal_triangle(3,3))
    



    이 챌린지를 시도하면서 즐거운 시간을 보내셨기를 바랍니다! 게시물에 대한 솔루션 및 의견을 자유롭게 공유하십시오.

    좋은 웹페이지 즐겨찾기