10장 함수.

Slides:



Advertisements
Similar presentations
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
Advertisements

출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
4장 배열과 함수 한빛미디어(주).
Part 03 상수, 변수, 자료형 ©우균, 창병모 © 우균, 창병모.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
최윤정 Java 프로그래밍 클래스 상속 최윤정
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
제 08 장 자바 빈즈 학기 인터넷비즈니스과 강 환수 교수.
컴퓨터 프로그래밍 기초 [Final] 기말고사
7장 배열 ②.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
2007 1학기 11 프로젝트 기초 실습.
Tail-recursive Function, High-order Function
컴퓨터 프로그래밍 실습 #6 제 4 장 클래스 작성.
두근두근 파이썬 수업 3장 계산해봅시다..
KIM HEESANG PL/SQL 2 KIM HEESANG
공학컴퓨터프로그래밍 Python 염익준 교수.
13. 연산자 오버로딩.
C 2장. C 프로그램 시작하기 #include <stdio.h> int main(void) { int num;
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
Method & library.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
어서와 C언어는 처음이지 제14장.
인터넷응용프로그래밍 JavaScript(Intro).
박성진 컴퓨터 프로그래밍 기초 [09] 배열 part 1 박성진
27장. 모듈화 프로그래밍.
Report #3 - due: 4/6 100*100의 2개의 희소 행렬 A, B를 전달 받아서 이들의 덧셈을 구하고, 그 결과의 행렬 C를 반환하는 add_sparse_matrix(A, B, C)를 다음과 같이 작성하라. 희소 행렬은 sparse_matrix 타입으로 표현된다.
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
연산자 (Operator).
Hello, Python! #2 <부제: 코딩은 혼자하는 것이다>
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
PL/SQL 코드 생성 및 수행 1 여러가지 환경 DOS에서 sqlplus Windows에서의 sqlplusw
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
Chapter 08. 함수.
문자열 컴퓨터시뮬레이션학과 2015년 봄학기 담당교수 : 이형원 E304호,
빌드 성공.
Fucntion 요약.
12. 상속 : 고급.
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
( Windows Service Application Debugging )
^^ Computer Programming 2 dmpr.cnu.ac.kr/~daygax.
함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문
2nd day Indexing and Slicing
제 6 장 함수(functions).
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
에어 PHP 입문.
2장 PHP 기초 PHP의 시작과 끝을 이해한다. 주석문에 대하여 이해한다. echo 문을 이용하여 화면에 출력하
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
Flow Diagram IV While.
제 8장. 클래스의 활용 학기 프로그래밍언어및실습 (C++).
함수, 모듈.
11장 배열 1. 배열이란? 1.1 배열의 개요 1.2 배열의 선언과 사용.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
16장. 변수, 연산자, 사용자 정의 함수 변수 배열과 객체 연산자 함수.
동적메모리와 연결 리스트 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원 E304호,
프로그래밍 개론 Ⅰ-실습 2장 데이터와 식①.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
아두이노 프로그래밍 2일차 – Part4 아날로그 키패드 활용하기 강사: 김영준 목원대학교 겸임교수
29장. 템플릿과 STL 01_ 템플릿 02_ STL.
어서와 C언어는 처음이지 제21장.
7 생성자 함수.
6 객체.
함수 정의, void 자료형 함수 원형선언 함수 호출 변수 영역 규칙 재귀 함수
Presentation transcript:

10장 함수

이 장의 내용 10.1 함수 정의 10.2 지역 변수와 전역 변수 10.3 함수 예제 10.4 재귀 함수 10.5 모듈

10.1 함수 정의

함수란 무엇인가? 함수 f 예: 10% 할인 가격 계산 함수 값 x를 받아서 어떤 계산을 수행하여 결과값 y = f(x)를 돌려준다. 예: 10% 할인 가격 계산 함수 함수 정의 f(x) = x – x * 0.1 함수 사용(호출) f(48000) = 43200

함수 정의 및 호출 def 키워드를 이용해서 새로운 함수 정의 함수 호출 함수 이름 매개변수parameter : 함수가 값을 받기 위한 변수 함수본체function body : 이 함수가 수행할 문장들 함수 호출 정의된 함수 내의 코드를 실행한다. 인자: 함수를 호출할 때 전달하는 값

예: 함수 정의 및 호출

예: 할인율을 받은 할인 가격 계산 함수 매개변수 가격 : price 할인율 : rate

결과값을 반환하지 않는 함수 수학에서의 함수는 반드시 결과값을 반환하여야 한다. 파이썬 언어에서는 함수가 결과값을 반환하지 않아도 된다.

10.2 지역 변수와 전역 변수

지역 변수local variable 함수 내에서 선언된 변수는 함수 내에서만 사용 가능 유효범위scope 변수 result, 매개변수 price 유효범위scope 선언된 변수가 사용될 수 있는 범위 지역 변수는 그 유효범위가 함수 내부 함수 밖에서 사용 오류

전역 변수global variable 함수 밖에서 선언된 전역 변수 함수 밖에서뿐만 아니라 함수 내에서도 사용 가능.

주의사항: 전역 변수 사용 함수 내에서 전역 변수 사용은 가능하지만 수정은 불가 ! 함수 내에서 대입문을 사용하여 전역 변수 수정을 시도하면 자동적으로 그 이름에 해당하는 새로운 지역 변수를 만든다.

전역 변수 사용 오류 …

함수 내에서 전역 변수 수정 함수 내에서 전역 변수 값을 수정하려면 전역 변수를 먼저 global로 선언해야 한다

10.3 함수 예제

삼각형 면적 계산 함수 헤론의 공식

평균과 중앙값 계산 함수

실행 결과

체질량지수 계산 함수

파일 내의 단어 출현 횟수

실행 결과

10.4 재귀 함수

재귀 함수recursive function 함수를 정의하는데 자기 자신을 사용하여 정의하는 함수 예: 팩토리얼 재귀적 정의 재귀 함수

팩토리얼 함수

예: 리스트에서 값 검색 함수 리스트에서 순차적으로 값을 검색한다. 첫 번째 원소와 비교하여 찾으면 True 리턴 그렇지 않으면 나머지 원소에 대해서 재귀 호출

예: 리스트 내의 값의 개수 계산 함수 리스트에서 순차적으로 값을 검색하여 개수를 계산한다. 첫 번째 원소와 비교하고, 나머지 원소에 대해서 재귀 호출 총갯수 = 재귀 호출에서 찾은 개수(n) + 1 혹은 0

10.5 모듈

모듈 사용하기 표준 라이브러리 모듈 random 모듈: 난수 생성 time 모듈: 시간 날짜 정보

모듈 사용 모듈 내의 함수 import 예

모듈 만들기 모듈 함수나 변수 또는 클래스 들을 모아 놓은 파이썬 파일(.py)

만든 모듈 사용하기 모듈 파일을 저장한 디렉터리로 이동 후에 파이썬 실행 sys.path.append 사용하기

만든 모듈 사용하기 환경 변수 PYTHONPATH 사용하기

Key Point © 우균, 창병모

Key Point def 키워드를 이용해서 새로운 함수를 정의(function definition)할 수 있다. 정의된 함수를 호출하여 실행하는 것을 함수 호출(function call)이라고 한다. 함수 내에서 선언된 변수는 함수 내에서만 사용될 수 있으며 이러한 변수를 지역 변수(local variable)라고 한다. 어떤 함수는 함수를 정의하는데 자기 자신을 사용하여 정의할 수 있는데 이러한 함수를 재귀함수(recursive function)라고 한다 © 우균, 창병모

프로그래밍 실습 © 우균, 창병모

▶ 프로그래밍 실습 1 편의점에서 재고 관리를 수행하는 프로그램을 작성해보자. 편의점에서 판매하는 물건의 재고를 사전(dictionary)에 저장한다. 커피음료, 펜, 종이컵, 우유, 콜라, 책, … 재고관리를 위해 다음 기능을 함수 형태로 구현한다. 물건의 재고를 출력한다. 물건의 재고를 증가한다. 물건의 재고를 감소한다. © 우균, 창병모

▶ 프로그래밍 실습 2 search 함수를 수정하여 찾고자 하는 값의 리스트 내의 인덱스를 계산하는 함수를 작성하시오. 만약 찾고자 하는 값이 첫 번째 원소와 같으면 해당 값을 찾았으므로 인덱스 0를 반환한다. 그렇지 않으면 나머지 리스트(lst[1:])에 대해서 검색하도록 이 함수를 재귀 호출하고 이 호출이 반환한 인덱스에 1을 더하여 반환하면 된다. 이렇게 하여 리스트 내의 몇 번째 원소에서 해당 값을 찾았는지 계산한다. © 우균, 창병모