Microsoft PowerPoint - ch00 - Introduction to Programming Language Lecture

Similar documents
<4D F736F F F696E74202D2031C1D6C2F72D31C2F7BDC32028B0ADC0C7C0DAB7E D20C7C1B7CEB1D7B7A1B9D6BEF0BEEE20B0FAB8F1BCD2B

Microsoft PowerPoint - 1주차-2차시 (강의자료) ch01 - C Programming 기초 (part 1)

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

2002년 2학기 자료구조

Chap 6: Graphs

Microsoft PowerPoint - ch07 - 포인터 pm0415

1

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for


<4D F736F F F696E74202D204C BAB8C3E6BCB3B8ED202D20C7C1B7CEB1D7B7A1B9D6C0DBBCBAB0FAC1A42C C F>

강의계획서 1. 강의개요 학습과목명 객체지향프로그래밍 Ⅰ 학점 3 학점교 강사명교 강사전화번호 강의시간 4시간강의실수강대상 2. 교과목학습목표 4차산업혁명시대의도래로컴퓨터와프로그래밍에대한관심이커지고있으며, 여러분야에서소프트웨어의중요성을강조하며, 새시대를이끌

강의계획서 (Sylabus) 2013 학년도 2 학기 * 강의과목 교과목명 (CourseName) 한국문화를찾아서 INSEARCHOFKOREANCULTURE 언어 (Language) 영어 과목번호 - 분반 (CourseNo.-Class) 수강대상

<31325FB1E8B0E6BCBA2E687770>

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

강의방법 (Teaching Method) 강의및실습 요소출석중간고사기말고사과제물기타 1 기타 2 기타 3 기타 4 비율 (%) 10% 30% 30% 30% 성적평가 (Grading) 만점 (Full Marks) 요소기타 5 기타 6 기타 7 기타

untitled

11장 포인터

C# Programming Guide - Types

6주차.key

chap 5: Trees

2. 강의방법 (CourseResources) 세미나 Seminar 발표 Presentation 질의응답 Q&A 초청강의 Special Lecture 현장답사 Field Trip 유인물활용 Handouts Audio/Video/TV Team Teaching 토의 / 토

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2

4 CD Construct Special Model VI 2 nd Order Model VI 2 Note: Hands-on 1, 2 RC 1 RLC mass-spring-damper 2 2 ζ ω n (rad/sec) 2 ( ζ < 1), 1 (ζ = 1), ( ) 1

11강-힙정렬.ppt

Microsoft PowerPoint - 알고리즘_5주차_1차시.pptx

제 1 강 희망의 땅, 알고리즘

Chapter 4. LISTS

프입2-강의노트-C++배경

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

C++ 기본문법 정리

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp

C++ Programming

Orcad Capture 9.x

강의10

<432B2BC7C1B7CEB1D7B7A1B9D628BABBB9AE5FC3D6C1BE295B315D2E687770>

chap x: G입력

Chap 6: Graphs

PowerPoint 프레젠테이션

Manufacturing6

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

02 C h a p t e r Java

02장.배열과 클래스

Microsoft PowerPoint - ch08 - 구조체 (structure) am0845

DE1-SoC Board

JVM 메모리구조

10주차.key

제목

HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M.

C++ Programming

Chapter 4. LISTS

C++ Programming

슬라이드 1

Microsoft PowerPoint - AC3.pptx

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

초보자를 위한 C# 21일 완성

2007_2_project4

No Slide Title

(Microsoft Word - \301\337\260\243\260\355\273\347.docx)

WISHBONE System-on-Chip Interconnection Architecture for Portable IP Cores

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

untitled

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - a10.ppt [호환 모드]

제 1 장 기본 개념

Algorithms

<4D F736F F F696E74202D20C1A63137C0E520B5BFC0FBB8DEB8F0B8AEBFCD20BFACB0E1B8AEBDBAC6AE>

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

Microsoft PowerPoint - PL_03-04.pptx

PowerPoint Presentation

MAX+plus II Getting Started - 무작정따라하기

유니티 변수-함수.key

슬라이드 1

hlogin2

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

11장 포인터

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

Microsoft Word - ExecutionStack

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

Design Issues

SW¹é¼Ł-³¯°³Æ÷ÇÔÇ¥Áö2013

01_피부과Part-01

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

Microsoft PowerPoint - 06-Pointer and Memory.pptx

OOP 소개

11 템플릿적용 - Java Program Performance Tuning (김명호기술이사)

설계란 무엇인가?

슬라이드 1

Microsoft PowerPoint - o8.pptx

Oracle Apps Day_SEM

Data structure: Assignment 1 Seung-Hoon Na October 1, Assignment 1 Binary search 주어진 정렬된 입력 파일이 있다고 가정하자. 단, 파일내의 숫자는 공백으로 구 분, file내에 숫자들은

歯경영혁신 단계별 프로그램 사례.ppt

<4D F736F F F696E74202D20C1A63132B0AD20B5BFC0FB20B8DEB8F0B8AEC7D2B4E7>


MPLAB C18 C

T100MD+

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

Microsoft PowerPoint - Chapter_08.pptx

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

歯15-ROMPLD.PDF

Transcription:

2014-1 프로그래밍언어 프로그래밍언어강의소개 2014. 3. 1. 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr)

프로그래밍언어강의개요 목적 C 프로그래밍언어를기반으로한공학문제의해결방법습득, C++ 프로그래밍언어의기본지식습득및객체지향형프로그래밍, 소프트웨어시스템설계및구현지식습득 관련 C/C++ 프로그래밍실습 C/C++ 기반설계프로젝트수행 선수과목 : 정보통신공학개론, 컴퓨터프로그래밍 (C, Java) 교재및참고문헌 [1] Walter Savitch, Absolute C++, 5 th Ed, Pearson, 2013. [2] 천인국, 쉽게풀어쓴 C언어 Express, 개정판, 생능출판사, 2012. [3] Deitel and Deitel, How to Program C++, Prentice Hall, 2005. ch 0-2

인류의문명진화 인류는새로운도구를효율적으로현명하게사용함으로써문명을진화시켰음 increased productivities with new tools of new materials, powered machines: from stone, stick, bronze, iron, telephone and computers increased collaborations among multiple persons increased performance in value creation increased energy efficiencies 컴퓨터와프로그래밍을통하여이러한기능을강화시킴 ch 0-3

프로그래밍언어과목을통하여무엇을배우나? 엔지니어 로생각하고설계하는방법을배운다. Technician ( 기능공 ) vs. Engineer Simple passive & repeated implementation vs. creative design ( 창의적설계 ) and fast prototyping ( 신속한 알고리즘의기초에대하여배우며, 설계된알고리즘에따라프로그램을설계 / 구현하는기법을배운다. C/C++ 프로그래밍기법을배운다. 프로그래밍의즐거움을느낄것이다! ch 0-4

소프트웨어시스템설계및구현단계 설계 (Design) 구현 (Implementation) Problem Specifications (Requirements, Objectives) Analysis of the requirement Evaluate Feasibility Syntax Error Edit program source code Compile Source codes.c,.cc Object codes.o Algorithm design Data structure design Link Executable codes.exe Software system design Subsystem design Block design Module design Class / Function design Load Execute Program Execution output Logical Error Correct Output? ch 0-5 Mission Completed!!

알고리즘 Algorithm is a list of instructions when executed, transform information from input to output The instructions are a finite set of steps that can be executed, in a definite deterministic order When these steps are actually executed, the execution must terminate after a finite time. Pseudo code Simplified list of instructions to show the overall process of algorithm not following the details of programming language the skeleton of the algorithm should be shown ch 0-6

자료구조 (Data Structure) 모든소프트웨어개발에서는효율적인알고리즘과이알고리즘에적합한자료구조를사용하여야우수한성능을발휘할수있음 알고리즘의예 sorting ( 정렬 ): selection sorting, quick sorting search ( 탐색 ): depth-first search, breadth-first search shortest path, minimum spanning tree 자료구조의예 단순배열 (simple array) 구조체 (structure) 구조체배열 (array of structure) 자기참조구조체 (self-referential structure) Linked List, Binary Tree Heap, priority queue Map, Skip list ch 0-7

효과적인프로그램개발방법 (1) 프로그램설계 ( 알고리즘및자료구조설계 ) 에더많은시간을투자할것 주어진문제를해결하기위한효율적인알고리즘을먼저구성할것 구성된알고리즘에적합한자료구조를선택할것 예 ) 100,000개의학생데이터로부터 0.01초의데이터처리시간내에특정조건을만족하는학생을탐색 (search) 하여야하는경우, 어떤자료구조를사용하며, 어떤방식으로탐색할것인가? array vs. linked list vs. binary tree linear search vs. binary search ch 0-8

효과적인프로그램개발방법 (2) 프로그램오류수정을위한 debugging 방법을먼저숙달할것 프로그램소스코드상에존재하는문법적에러및논리적인에러를빨리찾아내는방법을먼저숙달 Visual studio의 debugging 기능을먼저확인하고, 숙달할것 break point 기능 trace 기능 각단계에서의 local variable 값확인 ch 0-9

강의주제 (1) Part 1) 알고리즘과프로그래밍소개 - 컴퓨터, 프로그래밍과소프트웨어 - 순서도 (flow chart) 와의사코드 (pseudo code) - 알고리즘 - 자료구조 Part 2) Structured Programming - 조건문 : if, if-else, switch - 입출력, printf, scanf - 반복문 : for, while, do-while - 함수 (function) - 재귀 (recursion) - 배열 (array), 탐색 (searching) 과정렬 (sorting) - 파일및파일입출력 - 구조체 (structure) - 동적메모리할당 (dynamic memory allocation) - 포인터 (pointers) - 연결리스트 (linked list) - 이진트리 (binary tree) ch 0-10

강의주제 (2) Part 3) 객체지향형 ( object programming) 프로그래밍개요 - 객체지향형프로그래밍소개 - 클래스 (class) 와객체 (object) - 캡슐화 (encapsulation), 추상화 (abstraction), 정보은닉 (information hiding) - 소프트웨어재사용 (software reuse) 과상속 (inheritance) - Operator overloading ch 0-11

강의및실습 주당 2 시간강의 주당 2 시간실습 주강 2 시간보충설명시간 수업진행및평가 (1) 시험 학기당실기시험 4 회 시험 1: 3 월 29 일 ( 토요일 ) 시험 2( 중간고사 ):4 월 23 일 ( 수요일 ) 시험 3: 5 월 24 일 ( 토요일 ) 시험 4( 기말고사 ):6 월 18 일 ( 수요일 ) 각실기시험에구두시험 (oral test) 포함 과제물 (homework) 각장 (chapter) 별로 homework 부과 과제물보고서는각장별로분리하여제출 과제물제출기한 : 과제물공지후 1 주일이내 ( 수업시간에제출 ) 과제물제출기한초과시 1 주일단위로 20% 씩점수감점 ch 0-12

수업진행및평가 (2) 설계프로젝트 (Design Project) 공학교육인증프로그램 (ABEEK) 의요구사항에따른 4 주분량의설계프로젝트수행 설계문서작성 설계및구현, 성능분석 발표 최종보고서 성적평가 총 1000 점만점 시험 4 회 x 100 점 = 400 점 실습 200 점 설계프로젝트 200 점 출석및퀴즈 100 점 과제물 100 점 ch 0-13

수업진행및평가 (3) 조교 (Teaching Assistant: TA) 황현동 : 박사과정 ( 차세대네트워킹연구실, IT관 304호실 ) 전화 : (053) 810-3940 E-mail: mch2d@ynu.ac.kr 강의지원시스템 강의자료및보충설명자료 실습자료 ch 0-14

이과목에서배울 12 가지중점주제 (1) <Part 1: C> 1) 2차원배열을사용한 5 5 행렬계산 : 행렬덧셈, 뺄셈, 곱셈, 행렬식, 역행렬 2) 100,000개요소에대한선택정렬, quick sorting, 정렬시간이비교 3) 구조체 (structure) 4) 구조체배열에대한정렬 : Selection sorting of array of structure, Quick sorting of array of structure 5) 포인터 (pointer) 6) 2차원배열의동적생성, 7 7 행렬계산 7) 자기참조구조체 (self-referential structure) 기반의연결리스트 (linked list) 8) 이진트리 (binary tree) ch 0-15

이과목에서배울 12 가지중점주제 (2) <Part 2: C++> 9) 클래스 (class) 와객체 (object): 클래스선언및구현 (private data member, member function), encapsulation, abstraction, information hiding 10) operator overloading: +, -, *, /, ==,!=, ++, --,! (determinant of matrix), ~ (inverse of matrix) 11) 클래스상속 (inheritance of classes) 12) 가상함수 (virtual function) 와 polymorphism ( 同質異形 ) ch 0-16