Covenant

[문제]

number_generator함수는 x와 n을 입력 받습니다.

2와 5를 입력 받으면 2부터 시작해서 2씩 증가하는 숫자를 5개 가지는 리스트를 만들어서 리턴합니다.

[2,4,6,8,10]


4와 3을 입력 받으면 4부터 시작해서 4씩 증가하는 숫자를 3개 가지는 리스트를 만들어서 리턴합니다.

[4,8,12]


이를 일반화 하면 x부터 시작해서 x씩 증가하는 숫자를 n개 가지는 리스트를 리턴하도록 함수 number_generator를 완성하면 됩니다.



[풀이]

1
2
3
4
5
6
7
8
9
10
def number_generator(x, n):
    tmp = []
    a = x
    for i in range (0, n):
        a = a + x
        tmp.append(a)
    return tmp
 
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print(number_generator(3,5))
cs

 for문을 이용하여 tmp라는 임시 배열에 x씩 증가하는 숫자를 넣었다.



[다른풀이]

1
2
3
4
def number_generator(x, n):
    # 함수를 완성하세요
    return [i * x + x for i in range(n)]
print(number_generator(25))
cs

 배열 안에서 for 문을 사용하여 append를 사용하지 않더라도 원소를 추가할 수 있게 하였다. 앞에는 배열에 들아갈 요소의 규칙을 쓰면 된다.