Algorithm #1장(1)

ong_hh·2021년 1월 23일
0

Algorithm

목록 보기
2/2
post-thumbnail

01-1 알고리즘이란?

✔어떠한 문제를 해결하기 위해 정해 놓은 일련의 절차

세 정수의 최댓값 구하기

a = int(input('정수 a의 값을 입력하세요 : '))
b = int(input('정수 b의 값을 입력하세요 : '))
c = int(input('정수 c의 값을 입력하세요 : '))

maximum = a
if b > maximum: maximum = b
if c > maximum: maximum = c

print(f'최댓값은 {maximum} 입니다.')

순차구조(Sequential structure) : 한 문장씩 순서대로 처리되는 구조
선택구조(Select structure) : 조건식으로 평가한 결과에 따라 프로그램의 실행 흐름이 변경되는 구조

input( ) 함수는 문자열을 반환한다. 저장해야할 데이터가 정수형이라면 문자열을 10진수 정수형으로 바꿔야 한다. 👉 int(input( )) 의 형태로 데이터를 받기. 👉 형 변환 (type conversion) 과정

조건문과 분기

분기(branching)는 프로그램의 실행 흐름을 다른 곳으로 변경하는 명령.

n = int(input('정수를 입력하세요 : '))

if n==1:
	print('A')	#1
elif n==2:
	print('B')	#2
else:
	print('C')	#3

위 코드의 실행되는 부분은 #1, #2, #3 중 하나이며, 2개가 동시에 실행되거나 하나도 실행되지 않는 경우는 없다. 왜냐하면 이 프로그램의 흐름은 3개로 분기하기 때문이다.

n = int(input('정수를 입력하세요 : '))

if n==1:
	print('A')	#1
elif n==2:
	print('B')	#2
elif n==3:
	print('C')	#3

그러나 위 코드는 n이 1,2,3이 아니면 아무것도 표기하지 않는, 얼핏 보면 프로그램의 흐름이 3개로 분기한 것 같지만 사실 else문이 숨어 있다. 즉, 이 프로그램의 흐름은 4개로 분기한다.

n = int(input('정수를 입력하세요 : '))

if n==1:
	print('A')	#1
elif n==2:
	print('B')	#2
elif n==3:
	print('C')	#3
else:
	pass

산술 연산자(operator) : +나 -등의 기호
피연산자(operand) : 연산 대상
조건 연산자(conditional operator) : if~else문, 파이썬의 유일한 삼항 연산자.

순서도(flowchart)

  • 실제로 실행할 연산을 나타내는 기호
  • 제어 흐름을 나타내는 선 기호
  • 프로그램 순서도를 이해하거나 작성하는 데 편리한 특수 기호
profile
ᕕ( ᐛ )ᕗ

0개의 댓글