1675: [기초-리스트] 학생들 점수 변경(설명)(py)

메모리:128 MB 시간:1.000 S 표준 입력 및 출력
문제유형 채점방법:일반 만든사람:
제출:0 통과:0

문제설명

python 기준으로 설명되어 있는 문제입니다. 
리스트(list)에 대해 배우게 될 것입니다.


-------------------------------------------
한 반에 학생들의 점수가 입력된다. 
학생수는 반별로 다르기 때문에 총 학생수가 입력되고
학생에 따라 개별점수를 알려준다.
그런데 이번에 모든 학생들은 추가 점수를 받게 된다. 

추가점수를 받고 나서 최종 학생 점수를 출력해 보자.
n = int(input())            # 학생수 
point = []                   # 비어 있는 리스트 생성
for i in range(n):
    tmp = int(input())  # 학생별 점수 입력
    point.append(tmp)   # 리스트에 차례대로 저장
    
a = int(input())      # 추가할 점수

for i in range(n):
    point[i] = point[i]+a # 학생별로 점수 추가 

for i in range(n):
    print(point[i])         # 점수가 추가된 최종 결과 출력

** 세부 설명 **
학생수와 같이 많은 값을 각각 저장해야 하는 경우 변수를 하나씩 선언(사용)해서 하기는 어렵다.
예를 들어 100명의 학생이라고 하면 a,b,c,d .... a5와 같은 방식으로 변수를 만들어서 사용하는 것은 어렵고
정해져 있지 않은 학생수로 인해 몇 개를 만들어야 하는지 실행되기 전에는 알 수가 없다.

따라서 다른 방법이 필요한데 이를 위해 python에서는 list(리스트)를 이용한다.
list는 순서가 있는 데이터를 다룰 때 사용한다. list는 대괄호 [ ] 로 되어 있고 각각의 값을 접근할 때에는 위치(index)를 이용한다.

예를 들어
names = ['apple' , 'orange', 'tomato', 'melon'] 으로 정의할 수 있고
print( names[0]) 를 하면 apple을 출력한다. 이때 위치(index)는 0부터 시작된다. 

다른 값으로 변경할 때에는 names[0] = 'water melon' 식으로 위치(index)를 활용해서 변경한다.
그리고 변경이 아니라 새롭게 데이터를 추가할 경우는 append를 이용하여 names.append('blueberry') 로 작성한다.
리스트에 총 들어있는 개수를 알고 싶을 때에는 length 의미인 len(names) 를 활용한다. 
마지막으로 원하는 값을 삭제하고 싶을 때에는 names.remove('tomato') 를 활용할 수 있다.
이외에는 count, copy, clear, pop, insert, sort 등도 존재한다.

입력조건

첫 줄에 반에 있는 학생 수 n이 입력된다. ( 1<=n <=30 인 정수)
두 번째줄 부터 학생 개별 점수가 한 줄씩 입력된다. ( 0 <= 학생점수 + 추가점수 <=100)
마지막 줄에 추가점수 a가 입력된다. (단, 추가점수를 학생들이 받더라도 100점은 넘지 않도록 입력된다.)

출력조건

추가점수가 반영된 학생들의 최종점수를 한 줄씩 출력한다.

입력예시 복사

5
50
26
75
88
80
5

출력예시 복사

55
31
80
93
85