12
1. 처음으로 하는 코딩: 찾아가기 찾아가기 순천향대학교 컴퓨터공학과 이상정 순천향대학교 컴퓨터공학과 1 컴퓨터와 현대기술 프로그래밍을 하면? 프로그래밍을 하면? 프로그래밍하면 많은 것을 있음 프로그래밍하면 많은 것을 있음 기존의 프로그램이 부적합 자신 만의 고유의 일 웹 사이트 작동, 트위터 프로그램, 나 만의 게임 …… 프로그래밍을 통해 창조하고 해결하는 능력 보유 능력 보유 컴퓨터로 더 많은 것을 성취하고 제어 파이썬(Python)으로 만든 간단한 게임 소개 1. 처음으로 하는 코딩 순천향대학교 컴퓨터공학과 2

1. 처음으로하는코딩: 길찾아가기cs.sch.ac.kr/lecture/Python/2014/14-1-Python-Beginning.pdf · 2014-03-06 · 1. 처음으로하는코딩: 길찾아가기 순천향대학교컴퓨터공학과

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

1. 처음으로 하는 코딩:길 찾아가기길 찾아가기

순천향대학교 컴퓨터공학과

이 상 정

순천향대학교 컴퓨터공학과 1

컴퓨터와 현대기술

프로그래밍을 하면?프로그래밍을 하면?

프로그래밍을 하면 더 많은 것을 할 수 있음 프로그래밍을 하면 더 많은 것을 할 수 있음• 기존의 프로그램이 부적합

• 자신 만의 고유의 일

• 웹 사이트 작동, 트위터 프로그램, 나 만의 게임 ……

프로그래밍을 통해 창조하고 해결하는능력 보유능력 보유• 컴퓨터로 더 많은 것을 성취하고 제어

파이썬(Python)으로 만든간단한 게임 소개

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 2

컴퓨터와 현대기술

알아맞히기 게임: 코드가 하는 일은?알아맞히기 게임 드가 하는 일은?

print("Welcome!")print("Welcome!")

g = input("Guess the number: ")

guess = int(g)

if guess == 5:

print("You win!")print( You win! )

else:

print("You lose!")

i ("G !")

1. 처음으로 하는 코딩

print("Game over!")

순천향대학교 컴퓨터공학과 3

컴퓨터와 현대기술

프로그램 실행

실행을 위해 에디터(editor)와 인터프리터(interpreter) 필요

프로그램 실행

실행을 위해 에디터(editor)와 인터프리터(interpreter) 필요• 에디터는 프로그램의 소스 코드을 하드 디스크 파일로 저장

• 파이썬 인터프리터는 소스 코드를 컴퓨터가 이해하는 1과 0으로변환

• 파이썬3는 IDLE 통합 개발환경(Integrated Development Environment)에서 처리Environment)에서 처리

10000111.py 01110010

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 4

컴퓨터와 현대기술

파이썬3 설치 및 실행파이썬3 설치 및 실행

다운로드 및 설치 (2013년 3월 기준) 다운로드 및 설치 (2013년 3월 기준)• http://python.org/download/ 에서 Python 3.3.0 Windows x86 MSI

Installer 다운로드하여 설치

• 또는 강의 홈페이지에서 python-3.3.0.msi

• 2014년 3월 기준 버전 3.3.4

실행하면 파이썬 셀( h Sh ll) 창이 나타남 실행하면 파이썬 셀(Python Shell) 창이 나타남

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 5

컴퓨터와 현대기술

새로운 프로그램 파일 생성새로운 프로그램 파일 생성

파이썬 셸에서 [File]-[New Window] 메뉴 선택하여 소스 파이썬 셸에서 [File] [New Window] 메뉴 선택하여 소스코드 편집

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 6

컴퓨터와 현대기술

코드 준비와 실행드 준비와 실행

[File]-[Save] 메뉴 선택하여 저장 [File] [Save] 메뉴 선택하여 저장

[Run]-[Run Module] 메뉴 선택하여 실행

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 7

컴퓨터와 현대기술

시험 주행시험 주행

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 8

컴퓨터와 현대기술

알아맞히기 게임: 정보 메시지 출력알아맞히기 게임 정보 메시지 출력

사용자 추측에 관한 정보 메시지 출력 사용자 추측에 관한 정보 메시지 출력• 사용자가 입력한 답이 정답보다 높다거나 낮다는 정보 출력

• 프로그램 다시 실행할 때 정답에 더 가까워질 수 있음

입력한 숫자 출력 메시지입력한 숫자 출력 메시지

3 Too low

5 You win!

7 Too high

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 9

8 Too high

컴퓨터와 현대기술

if/else 분기문if 5:

if/else 분기문if guess == 5:

print("You win!")

else:else

print("You lose!")

print("Game over!")

print("You win!")

guess == 5 ?

p ( )

print("Game over")

print("You lose!")참

거짓

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 10

컴퓨터와 현대기술

메시지 출력 분기문if guess == 5: 메시지 출력 분기문if guess 5

print("You win!")

else:

if guess > 5:

print("Too high")

else:else:

print("Too low")

print("Game over!") p ( )

print("You win!")

이미지를 표시할 수 없습니다 . 컴퓨터 메모리가 부족하여 이미지를 열 수 없거나 이미지가 손상되었습니다 . 컴퓨터를 다시 시작한 후 파일을 다시 여십시오 . 여전히 빨간색 x가 나타나면 이미지를 삭제한 다음 다시 삽입해야 합니다 . 이미지를 표시할 수 없습니다 . 컴퓨터 메모리가 부족하여 이미지를 열 수 없거나 이미지가 손상되었습니다 . 컴퓨터를 다시 시작한 후 파일을 다시 여십시오 . 여전히 빨간색 x가 나타나면 이미지를 삭제한 다음 다시 삽입해야 합니다.

guess == 5 ?

print("Too high") print("Game over!")

참 guess > 5 ?

i t("T l ")

거짓참

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 11

print("Too low")거짓

컴퓨터와 현대기술

알아맞히기 게임: 출력 정보 개선알아맞히기 게임 출력 정보 개선

print("Welcome!") p ( )

g = input("Guess the number: ")

guess = int(g)guess int(g)

if guess == 5:

print("You win!")print( You win! )

else:

if guess > 5:if guess > 5:

print("Too high")

else:else:

print("Too low")

print("Game over!")

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 12

print( Game over! )

컴퓨터와 현대기술

시험주행시험주행

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 13

컴퓨터와 현대기술

코드 반복 실행 - 루프드 반복 실행 루프

알아맞히기 게임에서 사용자가 올바른 값을 추측할 때까지 알아맞히기 게임에서 사용자가 올바른 값을 추측할 때까지계속 실행하려면?• 코드의 일부분을 반복 실행 필요

루프(loop)는 같은 코드를 계속 반복해서 수행• 루프도 분기와 같이 참이나 거짓 조건(루프 조건)을 판정

• 조건이 참이면 코드 부분(루프 본체)을 반복 실행

answer=

i t(“A

이미지를 표시할 수 없습니다 . 컴퓨터 메모리가 부족하여 이미지를 열 수 없거나 이미지가 손상되었습니다 . 컴퓨터를 다시 시작한 후 파일을 다시 여십시오 . 여전히 빨간색 x가 나타나면 이미지를 삭제한 다음 다시 삽입해야 합니다 .

input(“Are we there?")

answer="no"" "? 참

print("We’re th !")

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 14

answer noanswer="no"? 참

거짓

there!")

컴퓨터와 현대기술

파이썬 while 루프answer = "no" 파이썬 while 루프answer no

while answer == "no":

answer = input("Are we there? ")answer input( Are we there? )

print("We’re there!")

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 15

컴퓨터와 현대기술

알아맞히기 게임: 코드 반복 실행알아맞히기 게임 드 반복 실행

print("Welcome!")print( Welcome! )

guess = 0

while guess != 5:

g = input("Guess the number: ")

guess = int(g)

if guess == 5:if guess == 5:

print("You win!")

else:

if guess > 5:

print("Too high")

else:

print("Too low")

print("Game over!")

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 16

print( Game over! )

컴퓨터와 현대기술

시험주행시험주행

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 17

컴퓨터와 현대기술

난수 설정난수 설정

알아맞히기 게임에서 정답이 5로 고정되지 않고 1에서 10 사 알아맞히기 게임에서 정답이 5로 고정되지 않고 1에서 10 사이의 임의의 수(random number, 난수)로 설정되려면?

아래 두 라인을 프로그램 위에 추가

from random import randint

secret randint(1 10)secret = randint(1, 10)

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 18

컴퓨터와 현대기술

알아맞히기 게임: 난수 설정알아맞히기 게임 난수 설정

from random import randint

secret = randint(1 10)secret = randint(1, 10)

print("Welcome!")

guess = 0 g

while guess != secret:

g = input("Guess the number: ")

guess = int(g)

if guess == secret:

print("You win!")print( You win! )

else:

if guess > secret:g

print("Too high")

else:

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 19

print("Too low")

print("Game over!")

컴퓨터와 현대기술

시험주행시험주행

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 20

컴퓨터와 현대기술

프로그래밍 도구상자 (1)프로그래밍 도구상자 (1)

프로그래밍 도구 프로그래밍 도구

• 프로그램은 코드로 만들어짐• 명령은 주어진 일을 수행명령은 주어진 일을 수행

• 분기문은 무엇을 할 지 결정

• 루프는 일을 반복

• 조건문은 어떤 것이 사실인지 거짓인지 결정

• 할당문은 어떤 변수에 값을 지정

• 값은 변수에 저장

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 21

컴퓨터와 현대기술

프로그래밍 도구상자 (2)프로그래밍 도구상자 (2)

파이썬 도구 파이썬 도구• if/else 분기문

• while 루프

• = 할당 연산자

• == 동치 비교 연산자

• != 비동치 비교 연산자

• > 크기 비교 연산자

• print() 화면에 메시지 출력• print() 화면에 메시지 출력

• input() 사용자 입력 받음

• int() 문자를 숫자로 변환

• randint() 난수를 생성

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 22

컴퓨터와 현대기술

과제과제

1 “알아맞히기 게임:난수 생성”을 작성하여 실행1. 알아맞히기 게임:난수 생성 을 작성하여 실행• 실행 결과 캡쳐

2. 앞에서 배운 내용을 사용한 임의의 프로그램 작성• 프로그램 설명

• 프로그램 소스

• 실행 결과

1. 처음으로 하는 코딩순천향대학교 컴퓨터공학과 23