프로그래밍실습 한남대학교 컴퓨터공학과 이 재 광 교수.

Slides:



Advertisements
Similar presentations
컴퓨터프로그래밍 I 2012 년 2 학기 1. 강사, 교재, 평가 시간 강사 : 이주호 연구실 : 공 호 강의 사이트 : 교재 : 천인국 저, 쉽게 풀어쓴 C.
Advertisements

프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
컴퓨터프로그래밍 I 강원대학교 컴퓨터학부 2012 년 1 학기 담당교수 : 정충교 1. 강사진 강사 : 정충교 교수 연구실 : 공 호 조교 : 3 분반 이남세 연구실 : 공
© 2012 생능출판사 All rights reserved 쉽게 풀어쓴 C 언어 Express C Express 제 2 장 프로그램 개발과정.
앱인벤터 기초과정 (1차시) ㈜헬로앱스 강사: 김영준 목원대학교 겸임교수.
난이도 : 초급 제1장 앱 인벤터 소개 및 준비.
C 언어 기초 1 위덕대학교 에너지전기공학부 이 수 형 2009년 1학기.
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
게임프로그래밍 입문 멀티미디어공학과 이재문.
제2장 프로그램 개발과정 C Express.
기초C언어 제1주 실습 강의 소개, C언어 개요, Cygwin/Eclipse 사용 컴퓨터시뮬레이션학과 2016년 봄학기
쉽게 풀어쓴 C언어 Express 제2장 프로그램 개발과정 C Express Slide 1 (of 31)
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++ 프로그래밍 기초 : 객체지향의 시작 C++로 프로그래밍한다는 것의 의미
Power C++ 제1장 C++ 소개.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
Power Java 제3장 이클립스 사용하기.
Power Java 제3장 이클립스 사용하기.
C 프로그래밍 I.
로봇 소프트웨어.
2006년 컴퓨터공학실험(I) 강의 소개 002, 004분반 인공지능 연구실.
Introduction To Computers
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
C언어 콘서트 제1장 프로그래밍 소개.
Power Java 제2장 자바 개발 도구.
콘텐츠 제작 프로젝트 [교재] - OpenGL 프로그래밍 가이드, 제4판, Dave Shreiner, Mason Woo, Jackie Neider, Tom Davis 공저, 남기혁 역, 정 보문화사, [참고자료] OpenGL Programming.
C 언어 1 1주차 C언어 시작하기 - 1차시 C 언어 특징 및 프로젝트 생성 Programming Language.
Windows Server 장. 사고를 대비한 데이터 백업.
컴퓨터 기본 원리 프로그래밍 언어 C 프로그래밍 환경 C 프로그래밍 작성, 컴파일, 링크 및 실행
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 01. 이것이 C언어다.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
C / C++ Programming in multi platform
1. C++ 시작하기.
컴퓨터과학 전공탐색 배상원.
컴퓨터정보공학부 서버 안내 [ IBM x3500 ] it.sangji.ac.kr ict.sangji.ac.kr 혹은
프로그래밍 언어 (C 언어) 기초 과목 개요 문양세 강원대학교 IT대학 컴퓨터과학전공.
개정판 누구나 즐기는 C언어 콘서트 제1장 프로그래밍 소개 출처: pixabay.
프로그래밍2 및 실습 전 명 중.
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
UNIX Unbounded A Beginning Approach
뇌를 자극하는 Windows Server 2012 R2
컴퓨터소프트웨어설계및실험 년 1학기 실험계획 -.
자바 5.0 프로그래밍.
LabVIEW WiznTec 주임 박명대 1.
쉽게 풀어쓴 C언어 Express 제1장 프로그래밍의 개념 C Express.
“사람과 컴퓨터” 이 점 숙 컴퓨터와 소프트웨어 “사람과 컴퓨터” 이 점 숙
컴퓨터 개론 및 실습 1주차 2015년 03월 05일.
강의 소개 컴퓨터시뮬레이션학과 2017년 봄학기 담당교수 : 이형원 E304호,
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
( Windows Service Application Debugging )
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
OpenCV 설정 2.21 만든이 딩딩.
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
AT MEGA 128 기초와 응용 I 기본적인 구조.
C 프로그래밍 I.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
공학도를 위한 C언어 프로그래밍실습1 -통합개발환경 사용법-
발표자 : 이지연 Programming Systems Lab.
Numerical Analysis Programming using NRs
멀티미디어 활용 -플래시 CS3 류 정 남.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
적용 가능 시간표 무한 생성 기계 2007/06/18 최석훈.
숙제 작성 및 제출 과정 김진하 2008/03/14.
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
개정판 누구나 즐기는 C언어 콘서트 제1장 프로그래밍 소개 출처: pixabay.
1장. C Language Synopsis.
Presentation transcript:

프로그래밍실습 한남대학교 컴퓨터공학과 이 재 광 교수

수업계획 과목명 : 프로그래밍실습 학점 및 이수구분 : 3학점, 전공선택 주당시간 : 강의 및 실습 (4시간) 수강대상 : 컴퓨터공학과 담당교수 : 이 재 광 연 구 실 : 공과대학 90704호 전화번호 : 042-629-7559(OFFICE) / 010-5407-9698(HP) E-mail : jklee@hnu.kr Homepage : http://netwk.hnu.kr/ (LECTURE)

수업목표 C언어를 통해 프로그래밍의 개념과 원리를 이해한다. 프로그래밍의 기능 및 구성요소를 이해한다.

수업방법 교수님의 수업 내용을 이해하고 추가 질문을 받는다 수업 내용을 정리하여 실제로 실습해 본다 팀 별 주제를 잡아 프로젝트를 진행한다

평가방법 평가기준 : 상대평가 중간고사 : 30% 기말고사 : 30% 실습 및 과제 : 30% 출석 : 10%

교재 및 참고문헌 교재명: 누구나 쉽게 즐기는 C언어 콘서트 저자: 천인국 출판사: 생능출판사 발행년도: 2010. 6. 15 ISBN: 978-89-7050-661-6 그 외 참고문헌: 안기수 저, "응용프로그램 개발을 위한 명품 C언어 프로젝트", 생능출판사 김원선 저, "Practical C Programming", 이한출판사 윤성우 저, “열혈 C 프로그래밍”, Orange Media

제1장 프로그래밍 소개

프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 이번 장에서 학습할 내용 프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 프로그램의 이해 프로그래밍 언어 알고리즘 프로그램 개발 과정

컴퓨터란? Q) 컴퓨터(computer)는 무엇인가? A) 컴퓨터는 기본적으로 계산(compute)하는 기계 그리고 1939년, 미국 아이오와 주립대학의 존 아타나소프(John Vincent Atanasoff, 1903~1995)와 그의 조수였던 클리포드 베리(Clifford Berry, 1918~1963)는 ‘아타나소프 베리 컴퓨터(Atanasoff-Berry Computer)’라는 세계 최초의 완전한 전자식 컴퓨터를 발표했다. 약자인 ‘ABC’로 더 많이 불린 이 컴퓨터는 1939년에 시험모델이 제작되어 최초 가동 실험을 했으며, 1942년에 완성품이 발표되었다. 그리고 1946년에는 미국 펜실베니아 대학의 존 에커트(John Presper Eckert, 1919~1995)와 존 모클리(John William Mauchly, 1907~1980)가 당시로서는 최고의 성능을 자랑하던 컴퓨터인 ‘에니악(ENIAC: Electronic Numerical Integrator and Computer)’을 발표해 화제가 되었다. 에니악은 초당 5,000번 이상의 계산을 하는 등, 이전까지 사용하던 컴퓨터보다 1,000배 이상 높은 성능을 발휘했다. 에니악을 비롯한 당시의 컴퓨터는 새로운 작업을 할 때마다 회로 및 기억장치를 바꿔 끼워야 하는 불편함이 있었다. 하지만 1945년에 헝가리 출신의 미국 수학자인 존 폰 노이만(John von Neumann, 1903~1957)은 컴퓨터 내부의 기억장치에 소프트웨어 방식의 프로그램을 내장, 소프트웨어만 바꾸면 여러 가지 작업에 대응할 수 있는 프로그램 내장 방식 컴퓨터의 개념을 발표했다.

컴퓨터의 정의 Q) 그렇다면 계산만 빠르게 할 수 있으면 컴퓨터인가? 현대적인 의미에서의 컴퓨터는 명령어들의 리스트에 따라 데이터를 처리하는 기계라고 할 수 있다

컴퓨터의 장점 Q) 컴퓨터의 가장 큰 장점은 무엇일까? 컴퓨터는 범용적인 기계이다. 프로그램만 바꿔주면 다양한 작업이 가능하다.

스마트폰도 컴퓨터의 일종 피처폰과 다르게 애플리케이션만 변경하면 다양한 용도로 사용가능

컴퓨터의 구성 요소 Q) 컴퓨터의 구성 요소를 크게 2가지로 분류하면? 컴퓨터는 기본적으로 하드웨어와 소프트웨어로 구분

하드웨어와 소프트웨어의 분리 최초의 컴퓨터에서는 분리되지 않았음 1950년대에 폰노이만이 제시한 아이디어 프로그램을 메모리에 저장 메모리에서 프로그램의 문장을 꺼내와서 하나씩 실행

프로그램의 역할 Q) 컴퓨터에서 프로그램이 하는 일은 무엇인가? 프로그램이란 우리가 하고자 하는 작업을 컴퓨터에게 전달하여 주는 역할을 한다.

작업을 지시하는 방법 Q) 컴퓨터에게 적당히 작업을 시킬 수 있을까? A) 상식이나 지능이 없기 때문에 아주 자세하고 구체적으로 일을 지시하여야 한다.

프로그램 안에 들어있는 것 컴퓨터에게 무엇을 어떻게 시킬 지를 기록해놓은 문서가 프로그램(program)이다. 프로그램의 각 문장은 컴퓨터에게 작업을 지시하는 명령(instruction)으로 되어 있다.

프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 이번 장에서 학습할 내용 프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 프로그램의 이해 프로그래밍 언어 알고리즘 프로그램 개발 과정

컴퓨터가 이해하는 언어 컴퓨터는 인간의 언어를 이해할 수 없다. 컴퓨터는 이진수로 된 기계어만을 이해한다.

프로그래밍 언어의 역할

프로그래밍 언어의 분류 기계어(machine language) 어셈블리어(assembly language) 고급 언어(high-level language) 기계어 어셈블리어 고급언어 컴퓨터 인간

컴퓨터에 이진수가 사용되는 이유 이진수는 전자회로로 구현하기가 쉽다.

C 언어 1970년대 초 AT&T의 Dennis Ritchie 에 의하여 개발 B언어->C언어 UNIX 운영 체제 개발에 필요해서 만들어짐 처음부터 전문가용 언어로 출발 1925년 당시 AT&T 사장이던 월터 기포드(Walter Sherman Gifford, 1885.1.10~1966.5.7)가 독립사업으로 벨 연구소를 설립했다. 원래는 웨스턴 일렉트릭사의 연구부문을 이어받은 것으로 AT&T와 웨스턴 일렉트릭사가 각 50%씩 출자하였다. 1963년 - ALGOL 60에서 CPL이 파생 1969년 - BCPL 개발 1970년 - B언어 개발 1972년 - 벨 연구소 (Bell Laboratories) 에 있는 Dennis Ritchie가 B의 후속으로 C 개발 Ken Thomson과 Dennis Ritchie가 클린턴 대통령으로부터 National Medal of Technology상을 받는 장면

C언어의 버전 K & R C ANSI C C99 1978년 “C Programming Language“ 책 출간 비공식적인 명세서 역할 ANSI C 1983년 ANSI(American National Standards Institute)는 X3J11이라는 위원회에 의한 표준 C99 1999년에 ISO에 의한 표준 C++에서 사용되는 특징 추가 아직 마이크로소프트는 지원하지 않음(이유: C++에 집중)

C언어의 특징 간결하다. 효율적이다. C 언어는 하드웨어를 직접 제어하는 저수준의 프로그래밍도 가능하고 고수준의 프로그래밍도 가능하다.  C언어는 이식성이 뛰어나다. 초보자가 배우기가 어렵다.

C언어의 특징

C언어의 미래 Q) 앞으로도 C언어는 사용될 것인가? C언어는 C++와 JAVA, C#, Objective-C의 공통적인 부분이다. 엠베디드 시스템에서는 C언어가 많이 사용된다. 엠베디드 시스템: 엠베디드 시스템이란 특수 목적의 시스템으로 컴퓨터가 장치 안에 MP3 플레이어, 스마트폰등이 여기에 속한다.

프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 이번 장에서 학습할 내용 프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 프로그램의 이해 프로그래밍 언어 알고리즘 프로그램 개발 과정

알고리즘 Q) 오븐의 사용법만 배우고 음식 재료만 있으면 누구나 요리가 가능한가? A) 요리법을 알아야 한다. 프로그램이 요리와 같다면 알고리즘은 요리법에 해당한다. 알고리즘(algorithm): 문제를 해결하는 절차(방법)

빵을 만드는 알고리즘 ① 빈 그릇을 준비한다. ② 이스트를 밀가루, 우유에 넣고 저어준다. ③ 버터, 설탕, 계란을 추가로 넣고 섞는다. ④ 따뜻한 곳에 놓아두어 발효시킨다 ⑤ 170~180도의 오븐에서 굽는다

1부터 10까지의 합을 구하는 알고리즘

알고리즘의 기술 순서도(flow chart): 프로그램에서의 논리 순서 또는 작업 순서를 그림으로 표현하는 방법

알고리즘의 예

중간 점검 친구에게 전화를 거는 알고리즘을 만들어보라. 세탁기를 이용하여서 세탁을 하는 알고리즘을 만들어보라. 1. 수화기를 든다. -> 상대방의 전화번호를 누른다. -> 통화를 한다 -> 통화가 끝나면 수화기를 내려 놓는다. 2. 세탁기의 전원을 켠다. -> 세탁기의 뚜껑을 연다. -> 옷과 세제를 넣는다. ->세탁기의 뚜겅을 닫는다. -> 실행 버튼을 누른다. -> 완료되었으면 전원을 차단한다.

프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 이번 장에서 학습할 내용 프로그램을 작성하기에 앞서서 중요한 개념들을 살펴봅니다.. 프로그램의 이해 프로그래밍 언어 알고리즘 프로그램 개발 과정

프로그램 작성 과정

프로그램 작성 단계 편집 (edit) 컴파일 (compile) 링크(link) 에디터를 이용하여 원하는 작업의 내용을 기술하여 소스 코드 작성 소스 파일(source file): 소스 코드가 들어 있는 텍스트 파일 (예) test.c 컴파일 (compile) 소스 파일->기계어로 변환 오브젝트 파일(object file) : 기계어로 변환된 파일 (예) test.obj 링크(link) 오브젝트 파일들을 라이브러리 파일들과 연결하여 하나의 실행 파일 생성 실행 파일 (executable file): 실행이 가능한 파일 (예) test.exe

Q & A (Q)소스 파일과 오브젝트 파일, 실행 파일 중에서 반드시 보관하여야 하는 파일은 무엇일까?

통합 개발 환경 통합 개발 환경(IDE: integrated development environment): 에디터 + 컴파일러 + 디버거

통합 개발 환경의 종류 비주얼 C++(Visual C++) 마이크로소프트사의 제품 윈도우 기반의 거의 모든 형태의 응용 프로그램 제작 가능 우리가 사용할 버전: 비주얼 스튜디오 2010 http://www.microsoft.com/express/vc/

비주얼 C++의 실행

솔루션과 프로젝트 솔루션(solution): 하나의 애플리케이션을 만들기 위한 프로젝트의 그룹. 프로젝트(project): 하나의 실행 파일을 만들기 위하여 필요한 파일들의 그룹 솔루션 프로젝트 프로젝트 프로젝트

프로젝트를 새로 만든다.

⑤ 자동으로 입력된다(프로젝트 이름 지정 시) ① [win32]를 선택한다 ② [Win32 콘솔 응용 프로그램]을 선택한다 ③ 프로젝트의 이름을 지정한다 ④ 프로젝트가 저장되는 폴더를 지정한다 ⑤ 자동으로 입력된다(프로젝트 이름 지정 시)

[빈 프로젝트(E)]을 선택한다

[프로젝트] 메뉴에서 [새 항목 추가] 선택한다 [코드]를 선택한다 [C++ 파일(.cpp)]를 선택한다 소스 파일의 이름을 지정한다

워크스페이스와 프로젝트에 속하는 파일을 보여준다 소스 코드를 입력하는 윈도우 컴파일과 링크과정에서의 메시지 출력

소스 코드 입력 한글자도 틀리면 안됨!

오류가 없다면 이러한 메시지가 나온다. [디버그] 메뉴의 [솔루션 빌드]를 선택 컴파일, 링크하여서 실행파일을 생성한다.

Ctrl + F5를 눌러 실행 시킨다.

우리가 작성한 프로그램 다음 장에서 자세히 설명할 것입니다. Hello World!

중간 점검 1. 새로운 프로젝트를 생성하고 프로젝트에 소스 파일을 추가하는 메뉴는 무엇인가? 2. 프로젝트에 속하는 소스 파일을 컴파일하여 실행하는 메뉴는 무엇인가? 3. C 언어에서는 대문자와 소문자를 구별하는가?

Q & A