[이것이 취업을 위한 코딩 테스트다 with 파이썬] 1-3강(파이썬의 기본 입출력, 조건문, 반복문)
2021. 4. 28. 18:17ㆍ민공지능/알고리즘
기본 입출력
- 모든 프로그램은 적절한(약속된) 입출력 양식을 가지고 있다.
- 프로그램 동작의 첫 번째 단계는 데이터를 입력 받거나 생성하는 것이다.
# 5
# 65 90 75 34 99
# 데이터의 개수 입력
n = int(input())
# 각 데이터를 공백을 기준으로 구분하여 입력
data = list(map(int, input().split()))
data.sort(reverse=True)
print(data)
# 실행결과
# [99, 90, 75, 65, 34]
# 데이터가 많지 않은 경우
# 8 3 9
a, b, c = map(int, input().split())
# 하나의 묶음으로 만든 것을 packing / a, b, c는 unpacking
print(a,b,c)
# 8 3 9
사용자로부터 입력을 최대한 빠르게 받아야하는 경우, sys.stdin.readline() 메서드를 이용한다.
단, 입력 후 엔터(Enter)가 줄 바꿈 기호로 입력되므로 rstrip() 메서드를 함께 사용한다.
import sys
# 문자열 입력 받기
data = sys.stdin.readline().rstrip()
print(data)
# 출력할 변수들
a = 1
b = 2
print(a, b)
# 1 2
# 줄 바꿈 원하지 않을 때 end
print(7, end = " ")
print(8, end = " ")
# 출력할 변수
answer = 7
print("정답은 " + str(answer) + "입니다.")
# 7 8 정답은 7입니다.
# f-string : 문자열 앞에 접두사 f를 붙여 사용
answer = 7
# 변수명을 기입하여 간단히 문자열과 정수를 함께 넣을 수 있다.
print(f'정답은 {answer}입니다.")
# 정답은 7입니다.
조건문
조건문은 프로그램의 흐름을 제어하는 문법니다. 조건에 따라서 프로그램의 로직을 설정할 수 있다.
x = 15
if x >= 10: # 조건이 True이면 출력
print('x >= 10')
if x >= 0:
print('x >= 0')
if x >= 30:
print('x >= 30')
# x >= 10
# x >= 0
- 들여쓰기 : 4개의 공백 문자를 사용하는 것을 표준으로 설정(공백문자 space를 4번 누르는 것을 추천)
반복문
반복문은 특정한 소스코드를 반복적으로 실행하고자 할 때 사용하는 문법이다.
파이썬에서는 while문과 for문이 있는데, 어떤 것을 사용해도 상관 없다.(for문이 더 간결하다)
<while 문>
# 1부터 9까지 모든 정수의 합 구하기 예제(while 문)
i = 1
result = 0
# i가 9보다 작거나 같을 때 아래 코드를 반복적으로 실행
while i <= 9:
result += i
i += 1
print(result)
# 45
----------------------------------------------------------
# 1부터 9까지의 홀수의 합 구하기 예제(while문)
i = 1
result = 0
# i가 9보다 작거나 같을 때 아래 코드를 반복적으로 실행
while i <= 9:
if i % 2 == 1: #2로 나누었을 때 나머지 값이 1인 경우 = 홀수
result += i
i += 1
print(result)
# 25
----------------------------------------------------------
# 반복문에서의 무한 루프
# 무한 루프 : 끊임없이 반복되는 반복 구문을 의미
# 반복문을 작성한 뒤에는 항상 반복문을 탈출할 수 있는지 확인한다.
x = 10
while x> 5:
print(x)
# 10
# 10
# 10
# ...(중략)
<for 문>
특정한 변수를 이용하여 'in'뒤에 오는 데이터(리스트, 튜플 등)에 포함되어 있는 원소를
첫 번째 인덱스부터 차례대로 하나씩 방문한다.
for 변수 in 리스트 :
실행할 소스코드
array = [9,8,7,6,5]
for x in array:
print(x)
# 9
# 8
# 7
# 6
# 5
--------------------------------------------------
# for문에서 연속적인 값을 차례대로 순회할 때는 range()를 주로 사용한다
# 이때 range(시작 값, 끝 값 + 1)형태로 사용한다
# 인자를 하나만 넣으면 자동으로 시작 값은 0이 된다
result = 0
for i in range(1,10):
result += i
print(result)
# 45
--------------------------------------------------
# 1부터 30까지 모든 정수의 합 구하기 예제
result = 0
for i in range(1,31):
result += i
print(result)
# 465
--------------------------------------------------
# 반복문에서 남은 코드의 실행을 건너뛰고,
# 다음 반복을 진행하고자 할 때 continue를 사용한다
# 1부터 9까지의 홀수의 합을 구할 때
result = 0
for i in range(1,10):
if i % 2 == 0: # 짝수일 때는 건너뛴다
continue
result += i
print(result)
# 25
--------------------------------------------------
# 반복문을 즉시 탈출하고자 할 때 break를 사용한다
# 1부터 5까지의 정수를 차례대로 출력하고자 할 때
i = 1
while True :
print("현재 i의 값 :", i)
if i == 5:
break
i += 1
# 현재 i의 값 : 1
# 현재 i의 값 : 2
# 현재 i의 값 : 3
# 현재 i의 값 : 4
# 현재 i의 값 : 5
--------------------------------------------------
# 학생들의 합격 여부 판단 예제
# 점수가 80점만 넘으면 합격
scores = [90,85,77,65,97]
for i in range(5):
if scores[i] >= 80:
print(i + 1, "번 학생은 합격입니다.")
# 1 번 학생은 합격입니다.
# 2 번 학생은 합격입니다.
# 5 번 학생은 합격입니다.
--------------------------------------------------
# 특정 번호의 학생은 제외하기
scores = [90,85,77,65,97]
cheating_student_list = {2,4}
for i in range(5):
if i + 1 in cheating_student_list:
continue
if scores[i] >= 80:
print(i + 1, "번 학생은 합격입니다.")
# 1 번 학생은 합격입니다.
# 5 번 학생은 합격입니다.
--------------------------------------------------
# 중첩된 반복문 : 구구단 예제
for i in range(2, 10):
for j in range(1,10):
print(i,"X", j, "=", i*j)
print()
for i in range(2, 10):
for j in range(1,10):
print(i,"X", j, "=", i*j)
print()
'''
2 X 1 = 2
2 X 2 = 4
2 X 3 = 6
2 X 4 = 8
2 X 5 = 10
2 X 6 = 12
2 X 7 = 14
2 X 8 = 16
2 X 9 = 18
3 X 1 = 3
3 X 2 = 6
3 X 3 = 9
...
(중략)
'''
'민공지능 > 알고리즘' 카테고리의 다른 글
[이것이 취업을 위한 코딩 테스트다 with 파이썬] 3-1강(스택, 큐, 재귀 함수) (0) | 2021.04.30 |
---|---|
[이것이 취업을 위한 코딩 테스트다 with 파이썬] 1-4강(함수와 람다 표현식, 라이브러리) (0) | 2021.04.29 |
[이것이 취업을 위한 코딩 테스트다 with 파이썬] 2-2강(구현) (0) | 2021.04.28 |
[이것이 취업을 위한 코딩 테스트다 with 파이썬] 2-1강(그리디 알고리즘, 예제) (0) | 2021.04.27 |
[이것이 취업을 위한 코딩 테스트다 with 파이썬] 1-2강(문자열, 튜플, 사전, 집합 자료형) (0) | 2021.04.27 |