C++ 프로그래밍 C++ 프로그래밍 TA. 소개 이름 : 장미영 연구실 : 7 호관 401 호 데이터베이스 연구실  TA 에서 실습한 내용은 수업시간에 메일로 제출 – 파일명 )

Slides:



Advertisements
Similar presentations
파이썬 (Python). 1 일 : 파이썬 프로그래밍 기초 2 일 : 객체, 문자열 3 일 : 문자인코딩, 정규표현식, 옛한글 4 일 : 파일 입출력 5 일 : 함수와 모듈 6 일 : 원시 말뭉치 다루기 실습 7 일 : 주석 말뭉치 다루기 실습 8 일 : 웹 데이터로.
Advertisements

Python Ch.06 RaspberryPi Sejin Oh. Raspberry Pi Python  IDLE(Integrated Development Environment)  라즈베리 파이 배포본들은 일반적으로 파이썬과 파이썬 3 의 IDLE 파 이썬 개발 도구를.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
1 Part 03 상수, 변수, 자료형 안산 1 대학 디지털정보통신과 임 성 국. 2 이 장의 내용 자료형이란 무엇인가 ? 상수와 변수 정수형 부동소수형 문자형.
Part 03 상수, 변수, 자료형 ©우균, 창병모 © 우균, 창병모.
C++ 프로그래밍 C++ 프로그래밍 TA 장성재 1.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++ 프로그래밍 기초 : 객체지향의 시작 C++로 프로그래밍한다는 것의 의미
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
#include <stdio.h> int main(void) { float radius; // 원의 반지름
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
제 3장. C보다 나은 C++ II.
3장. Hello World 01_ Hello World 프로그램 훑어보기.
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
1. C++ 시작하기.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
2주차: 변수, 수식, Control Flow.
6장. printf와 scanf 함수에 대한 고찰
2007 1학기 11 프로젝트 기초 실습.
14. 예외처리.
공학컴퓨터프로그래밍 Python 염익준 교수.
11장. 1차원 배열.
C#.
13. 연산자 오버로딩.
C 2장. C 프로그램 시작하기 #include <stdio.h> int main(void) { int num;
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
JA A V W. 03.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
어서와 C언어는 처음이지 제14장.
이름 : 황 상 두 전화번호 : 이메일 : PinTool 이름 : 황 상 두 전화번호 : 이메일 :
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
타입, 연산자 Chapter 5, 6 Kum Deuk Kyu , Ph. D. Spring 2015
C 3장. 변수와 데이터형 #include <stdio.h> int main(void) { int num;
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Lesson 2. 기본 데이터형.
제 1장. C++ 시작하기.
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
연산자 (Operator).
01_ C++ 스타일의 입출력 02_ C 스타일의 입출력
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
자바 5.0 프로그래밍.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
컴퓨터 프로그래밍 기초 - 3rd : 상수,변수 생성규칙 및 자료형 -
8주차: Strings, Arrays and Pointers
Chapter 08. 함수.
Choi Seong Yun 컴퓨터 프로그래밍 기초 #03 : 변수와 자료형 Choi Seong Yun
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
CHAP 21. 전화, SMS, 주소록.
객체기반 SW설계 팀활동지 4.
^^ Computer Programming 2 dmpr.cnu.ac.kr/~daygax.
함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문
에어 PHP 입문.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Lecture 02 프로그램 구조 및 문법 Kwang-Man Ko
함수, 모듈.
8장 선택 논리 II 1. 논리연산자 1.1 논리연산자 : AND (&&) 1.2 논리연산자 : OR (||)
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
제 29 강 스트링(string) 다루기 s a i s . s T i h t g r i n.
29장. 템플릿과 STL 01_ 템플릿 02_ STL.
어서와 C언어는 처음이지 제21장.
수업 내용 수업 목표 강의 내용 강의 계획서 교과서 및 참고도서 평가 방법 수강생의 학습 방법 제안 강의자료 사이트
Presentation transcript:

C++ 프로그래밍 C++ 프로그래밍 TA

소개 이름 : 장미영 연구실 : 7 호관 401 호 데이터베이스 연구실  TA 에서 실습한 내용은 수업시간에 메일로 제출 – 파일명 ) 날짜 _TA_ 학번.zip –Ex) 0311_TA_ zip 질문 및 상담 시간 : 화 02:00 ~ 06:00 pm

수업 목표 프로그래밍 언어를 배워야 하는 이유 C++ 프로그래밍에 대하여 C++ 프로그래밍 개발 환경 적어도, Hello World 는 짤 줄 알아야 한다.

C++ 프로그래밍 언어 IT 정보공학과 ( 컴퓨터공학과 )  Software 공학자 프로그래밍 언어를 배우는 이유 ?  건축학과가 건물을 짓기 위해서는, 건물을 짓기 위해 사용되는 도구 ( 콘크리트, 시멘트, 철근 등 ) 를 잘 알아야 한다.  그렇다면, IT 정보공학과는 ?  도구를 잘 다뤄야 한다. 도구 중 하나가 프로그래밍 언어이다.

C++ 프로그래밍 언어 C++ 개발 도구  Microsoft Visual Studio 2008 Microsoft Visual Studio 2008 실행 -> [File] -> [New] -> Project -> Win32 Console Application -> Empty Project -> Finish -> Source Files -> Add -> C++ File

cin, cout 객체의 사용법 cin ( Console Input Stream )  콘솔 (Console) 창에서 키보드의 입력을 받는다.  C 언어에서의 scanf 와 동일한 동작  사용 예제 ) –cin >> 변수이름 ; cout ( Console Output Stream )  콘솔창에 출력한다.  C 언어에서 printf 와 동일한 동작  사용 예제 ) –cout << { 출력하고자 하는 것 } ☞상수, 문자열, 변수 등 ☞여러 개의 상수, 문자열, 변수를 혼합하고 싶을땐, << 를 다중입력 ☞ cout << 변수 1 << 변수 2 << endl;

#include cin, cout 객체를 사용하기 위해서, iostream 헤더파일을 인클루드 시킨다.  cin, cout 이 iostream 헤더파일 안에 정의되어 있기 때문에, 이를 이용하기 위해서 헤더파일을 포함시킨다. –#include

using namespace std; C++ 언어는 사용하는 이름공간을 지정해주어야 한다.  namespace  앞서 나온 cin, cout 객체는 iostream 헤더파일 안에, std 이름공간 (namespace) 에 정의되어 있기 때문에, 이를 이용하기 위해서는 사용하려는 이름공간을 지정해주어야 한다.  using namespace std;

Hello, World 프로그램 cout 객체를 사용하기 위한 준비작업이 필요하다. 프로그램에게 시킬 일은 main() 함수 안에 적는다. cout 객체에 문자열을 보내면 화면에 출력된다. 세미콜론이 마침표의 역할을 한다. #include using namespace std; int main() {... return 0; } cout << “Hello, World\n”;

Hello, World 프로그램 Hello, World 프로그램의 소스 코드 실행 결과 #include using namespace std; int main() { cout << “Hello, World” << endl; return 0; }

변수

정보와 변수 C++ 에 있어서 모든 정보는 근본적으로 숫자다.  그림을 숫자로 표현한 예  변수는 정보를 보관할 수 있는 공간이다.

변수의 정의 변수 3 개를 정의하고 초기화 하는 방법 1 변수 3 개를 정의하고 초기화 하는 방법 2 변수의 정의와 관련된 규칙  정의하지 않은 변수는 사용할 수 없다.  변수를 사용하기 전에 변수를 미리 정의해야 한다.

변수에 보관된 값 출력하기 cout 객체에 변수를 보내면 보관된 값이 출력된다. 실행 결과

실습 #1 다음과 같은 출력결과를 만드는 프로그램을 작성  출력라인 ‘\n’ 또는 endl (end line)

실습 #2 변수의 입출력  두 변수 number1, number2 를 정의하고, 두 변수를 키보드로부터 입력받아 두 변수의 합을 출력하라. – 변수의 입력은 cin 객체 – 변수의 출력은 cout 객체

CONTENTS C++ 고급 변수 타입 실습문제 1 연산자 실습문제 2

변수

변수의 이름을 짓는 규칙 다음의 조건에 부합되는 이름만 사용할 수 있다.  중복된 이름의 변수를 사용할 수 없다.  변수 이름에는 알파벳, 숫자, 언더스코어 (_) 만 포함할 수 있다.  단, 숫자는 변수 이름의 첫번째 글자로 사용할 수 없다.  변수 이름의 길이에는 제한이 없다.  변수 이름에 포함하는 알파벳은 대소문자를 구분한다.  키워드는 변수의 이름으로 사용할 수 없다.

변수의 이름을 잘 짓는법 다음의 권장사항을 따르면 효율적인 이름을 지을 수 있다.  변수의 용도를 예상할 수 있게 이름을 짓자.  단어와 단어를 구분할 수 있게 짓자.  필요 없이 긴 이름은 피하자. StudentsNumber, student_number (O) studentnumber (X) StudentsNumber (O) n, num, number, students (X)

타입

타입의 종류 C++ 에서 제공하는 기본 타입들

정수 타입 (Integers) 정수 타입별로 보관할 수 있는 값의 범위 10 진수, 8 진수, 16 진수의 표현 타입최소값최대값크기 (bytes) signed short unsigned short signed int unsigned int signed long unsigned long * 32 비트 윈도우즈 시스템을 기준으로 한 값 int decimal = 41;// 10 진수 int octal = 041;// 8 진수 int hexadecimal = 0x41;// 16 진수

비트 (Bits) 와 바이트 (Bytes) 비트는 0 혹은 1 을 나타낼 수 있는 전기장치로 생각할 수 있다. 1 바이트는 8 비트다. unsigned short 타입의 변수의 범위 계산하기  unsigned short 타입의 크기는 2 바이트  2 바이트는 16 비트  총 2 16 (= 65536) 개의 상태를 가질 수 있다.  그러므로 0 ~ 의 값을 보관할 수 있다.

signed 와 Unsigned 의 의미 동일한 내용의 정보라도 방식에 따라서 다른 값으로 해석될 수 있다.

실수 타입 (Floating points) 실수 타입별로 보관할 수 있는 값의 범위 float 타입 상수의 표현 타입최소값최대값크기 (bytes) float E E+384 double E E+3088 long double E E float f = f; // 실수 뒤에 f 를 붙인다. double d = 1.23; long double ld = 123.0;

부동 소수점 방식의 이해 부동 소수점 방식은 실수를 가수와 지수부분으로 나누어 보관. 부동 소수점 방식을 사용하면 보다 넓은 범위의 숫자를 보관할 수 있지만 정밀도를 잃어버리는 단점도 있다.

문자 타입 (Characters) 문자 타입별로 보관할 수 있는 값의 범위 문자 타입도 결국은 숫자를 보관한다. 타입최소값최대값크기 (bytes) signed char unsigned char wchar_t

이스케이프 문자열 (Escape Sequences) 문자열 내에서 특수한 의미로 사용되는 문자열 (Sequences) 타입아스키 코드 상에서의 표현 C++ 에서의 표현 개행 문자 NL(LF)\n 수평탭 HT\t 수직탭 VT\v 백스페이스 BS\b 캐리지 리턴 CR\r 폼피드 FF\f 벨소리 BEL\a 역슬래쉬 \\\ 작은 따옴표 ‘\’ 큰따옴표 “\” 8 진수 ooo\ooo 16 진수 hhh\xhhh

부울 타입 (Boolean) 부울 타입은 true 혹은 false 의 값을 갖는다. 실행 결과 bool b1; bool b2; b1 = true; b2 = false; cout << “b1 = “ << b1 << “\n”; cout << “b2 = “ << b2 << “\n”;

암시적 형변환 (Implicit Type Conversion) 암시적 형변환은 변수를 대입하는 과정에서 자동적으로 발생하는 형변환이다. 이 때 값이 변할 수 있는데, 다음의 경우는 그 결과를 예상할 수 있는 경우이다.  실수 타입에서 정수 타입으로 형변환 발생 시 소수점 이하 부분이 잘린다. ( 반올림 아님 )  모든 타입에서 부울 타입으로 형변환 발생시, 0 이 아닌 모든 값은 true 로, 0 은 false 로 바뀐다. 다음의 경우는 그 결과를 예상할 수 없는 경우이다.  큰 범위를 갖는 타입에서 작은 범위를 갖는 타입으로 형변환 발생시 –int -> unsigned short –double -> float –float -> short –int -> float

명시적 형변환 (Explicit Type Conversion) 명시적 형변환은 개발자가 직접 명령하는 형변환이다. 명시적 형변환을 사용해서 개발자의 의도를 명확히 할 수 있다.  컴파일러의 경고 (Warning) 메시지를 막을 수 있다.  다른 개발자들에게 본인의 의도를 알릴 수 있다. 뒤에서 함수와 클래스를 배운 후에는 다음의 용도로 사용할 수 있다.  함수 호출 시에 인자를 명시적으로 형변환해서 넘겨준다.  부모 클래스의 포인터를 자식 클래스의 포인터로 다운캐스팅한다. float f = 66.89f; int i = (int)f;// i 는 66 이 된다.

연산자

사칙 연산 사칙 연산 및 나머지 연산의 예 실행 결과

연산자 사용의 규칙 연산자는 정해진 개수 (1, 2, 3) 의 피연산자를 받아서 하나의 값을 반환한다. 위의 규칙은 연쇄적으로 적용된다. 연산의 결과값은 다른 연산의 피연산자로 사용될 수 있다.

대입 연산자 (Assignment Operators) 우측 피연산자의 값을 좌측에 대입한다. 대입 연산자도 연쇄적으로 사용할 수 있다.

관계 연산자 (Relational Operators) 피연산자의 대소관계를 비교한다. 실행결과

논리 연산자 (Logical Operators) 논리 연산을 수행한다. 피연산자를 사용해서 부울 (bool) 연산을 수행한다. 피연산자 1 피연산자 2 AND(&&)OR(||)NOT(!) false true falsetruefalsetrue false truefalse true false * NOT 연산자는 피연산자 1 만 받는다.

관계연산자와 논리연산자 일반적으로 논리연산자는 관계연산자와 함께 사용한다. 관계연산자의 우선순위가 높으므로 먼저 수행된다.

연산중에 발생하는 형변환 두 피연산자의 타입이 다르다면, 두 피연산자 중에서 보다 큰 타입 쪽으로 형변환이 발생한다. int 보다 작은 타입들은 int 혹은 unsigned int 타입으로 변환된다.

실습 #1 C++ 프로그래밍의 중간고사, 기말고사 점수를 입력한 뒤, 평균을 출력  평균을 저장할 double 타입의 avg 변수

실습 #2 초를 입력하면 시간, 분, 초로 나타내는 프로그램

숙제 두 직선의 교차점 구하기 x1, y1 x2, y2 x1, y1

과제 제출 방법 TA 수업 미 참석자  발표자료를 읽어보고, 스스로 수행한 실습내용을 과제와 함께 제출  쪽의 실습 1( 평균내기 ), 실습 2( 초입력 ) 을 제출 과제 : 소스파일을 이메일로 제출   기한 : 다음주 화요일 (16 일 ) 오후 6 시까지 ( 시간엄수 !)  실습 파일명 : exe1_ 학번.cpp 또는 exe1_ 학번.txt  과제 파일명 : report1_ 학번.cpp 또는 report1_ 학번.txt  주석 / 변수 / 함수 명 작성 잘하세요 !!