취뽀 기록

#열심히 살자 #취업 #공부

1차원 배열 7

[코드트리] 배열 만들기 > 100 도달하기

정수 n이 주어지면 정수 n을 두 번째 항으로 초기화하고 첫 번째 항은 1로 초기화 한 후에, 세 번째 항부터 전전항과 전항을 더한 수로 채워나가다가 100을 넘길때까지 출력하는 프로그램을 작성해보세요. # 입력받은 정수를 배열의 두번째 인덱스에 저장 n = int(input()) arr = [1, n] cnt = 1 # 배열을 전전항과 전항을 더한 수로 채워나가고, 그 값이 100을 초과하면 while문을 탈출 while True: cnt += 1 arr.append(arr[cnt - 1] + arr[cnt - 2]) if arr[cnt] > 100: break # 100을 딱 초과한 항까지 배열의 인덱스에 저장된 값을 출력 for elem in arr: print(elem, end=" ") # 나의 ..

[코드트리] 한 줄에 여러 개 입력 > 짝수들을 거꾸로 출력

n개의 원소가 차례대로 주어졌을 때, 짝수인 수만 출력하려고 합니다. 이 때, 출력의 순서를 입력의 순서와 반대로 하는 프로그램을 작성해보세요. 예를 들어, 입력된 숫자들이 1 2 3 4 5 6 이라면 출력이 6 4 2 가 되도록 합니다. # 정수의 개수 n을 입력받습니다. n = int(input()) # 배열을 구현하여 주어진 수를 입력받습니다. arr = list(map(int, input().split())) # 입력받은 수들을 거꾸로 보면서 짝수인 값만 출력합니다. for i in range(n-1, -1, -1): if arr[i] % 2 == 0: print(arr[i], end=" ") # 나의 풀이 ---------------------- n = int(input()) num = list..

[코드트리] 한 줄에 여러 개 입력 > 학점 계산기

과목 수 n이 주어집니다. n개 과목의 학점을 입력받아서 평균학점을 구하여 출력하고, 평균이 4.0 이상이면 Perfect, 3.0 이상이면 Good, 3.0 미만이면 Poor를 출력하는 프로그램을 작성해보세요. # 과목의 개수 n을 입력받습니다. n = int(input()) # 배열을 구현하여 주어진 수를 입력받습니다. arr = list(map(float, input().split())) # 배열에 있는 실수들의 합을 구합니다. sum_val = sum(arr) #평균 구하기 avg = sum_val / n # 출력 print(f"{avg:.1f}") if avg >= 4.0: print("Perfect") elif avg >= 3.0: print("Good") else: print("Poor") ..

[코드트리] 한 줄에 여러 개 입력 > 특정 숫자 도달하기

500이하의 정수가 총 10번 주어지는데, 250이상의 정수가 주어지면 마지막으로 주어진 수를 제외하고 주어진 모든 정수들의 합계와 평균을 구하는 프로그램을 작성해보세요. 단, 250이상의 정수가 없다면 10개의 합계와 평균을 계산하면 됨에 유의합니다. arr = list(map(int, input().split())) # map 함수를 이용하여 입력받은 수를 str이 아닌 int 타입으로 변환 sum_val = 0 # 합계를 저장할 변수 초기화 cnt = 0 # 개수를 저장할 변수 초기화 for elem in arr: # arr 리스트에 있는 원소를 if elem >= 250: # 만약 원소가 250 이상이면 break # 멈추기 sum_val += elem # sum_val에 elem 원소들 합계 저..

[python] list 리스트_리스트의 원소 합 구하기 map 함수

한 줄에 공백을 사이에 두고 10개의 숫자가 주어졌을 때, 이 숫자들의 합을 구하는 코드를 작성해보자. 공백을 사이에 두고 숫자가 주어지는 경우 input( ).split( ) 으로 입력받을 수 있다. arr = input().split() print(arr) >> 3 5 7 ['3', '5', '7'] 위의 코드를 실행해보면, 각 원소의 type이 int가 아닌 str인 것을 알 수 있다. 따라서 10개 원소의 합을 구하는 과정은 다음과 같다. arr = input().split() sum_val = int(arr[0]) + int(arr[1]) + ... + int(arr[9]) print(sum_val) 위의 코드를 for loop을 이용하여 더 쉽게 바꿀 수 있다. arr = input().spl..

[python] 리스트 원소 추가, 제거, 개수 세기 append, pop, len 함수

비어있는 리스트 생성 arr = [] 혹은 arr = list() 리스트 맨 끝에 원소 추가(append) arr = [3, 5] arr.append(9) print(arr) >> [3, 5, 9] 리스트 원소 지우기(pop) arr = [3, 5, 9] arr.pop() print(arr) >> [3, 5] 리스트 개수 세기(len) >> print(len([1, 3, 5])) 3 >> print(len([3])) 1 응용 len 함수를 이용해 len(arr)로 arr의 원소의 수를 받아 모든 원소의 합을 구해보자. arr = [1, 2, 2, 5] n = len(arr) sum_val = 0 for i in range(n): sum_val += arr[i] print(sum_val) >> 10

[코드트리] 한 줄에 여러 개 입력 > 배열 채우고 출력하기

문자 10개를 저장할 수 있는 배열을 만들고 10개의 문자를 입력받습니다. 입력받은 문자의 순서를 거꾸로 출력하는 프로그램을 작성해보세요. # 배열을 구현하여 주어진 수를 입력받습니다. arr = list(input().split()) # 9부터 0까지의 인덱스에 주어진 문자를 차례대로 출력합니다. for i in range(9, -1, -1): print(arr[i], end="") # 나의 풀이 ----------------------------------- arr = list(map(str, input().split())) for i in range(9, -1, -1): print(arr[i], end = "")