2007 1학기 08 반복문.

Slides:



Advertisements
Similar presentations
Ⅰ. 연산자 Ⅱ. 제어 구조. 연산자 : 할당 연산자 - 사용자가 정의한 변수에 임의의 값을 저장하는 기능 strvar = strVar1+ “ Hello ”
Advertisements

파이썬 (Python). 1 일 : 파이썬 프로그래밍 기초 2 일 : 객체, 문자열 3 일 : 문자인코딩, 정규표현식, 옛한글 4 일 : 파일 입출력 5 일 : 함수와 모듈 6 일 : 원시 말뭉치 다루기 실습 7 일 : 주석 말뭉치 다루기 실습 8 일 : 웹 데이터로.
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
Power Java 제6장 조건과 반복.
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++ 프로그래밍 기초 : 객체지향의 시작 C++로 프로그래밍한다는 것의 의미
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 07. 반복실행을 명령하는 반복문.
제 4 장 프로그램 제어문 C 프로그래밍.
C 5장. 제어문 #include <stdio.h> int main(void) { int num;
Chapter 7. 조건문.
Chapter 6 Repetition.
Chapter09 JavaScript 구구단표 만들기
Chapter 07. 반복문.
C언어 콘서트 제6장 반복문.
어서와 Java는 처음이지! 제3장선택과 반복.
6 반복문의 기본 for 문 여러 번 반복하는 작업은 for 문으로!.
고급 선택 제어문과 반복문 Chapter 9 C에서의 다중 선택 제어문 선 검사 반복 구조와 for 문
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Error Detection and Correction
Part 07 제어 구조 ©우균, 창병모 © 우균, 창병모.
2007 1학기 11 프로젝트 기초 실습.
예제로 배우는 Visual Basic 구구단 작성기로 익히는 반복문
컴퓨터 프로그래밍 : 실습3 2장 데이터와 식.
순서도.
C#.
3. while문 반복문의 종류 while 문 while( 조건식 )        문장;.
Chapter 09 반복문.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express Slide 1 (of 27)
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
C 언어 교육 02 주차 – scanf & 반복문과 조건문 교육부장 조하정.
프로그래밍 개요
어서와 C언어는 처음이지 제14장.
어서와 C언어는 처음이지 제15장.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
7장. 다양한 형태의 반복문. 7장. 다양한 형태의 반복문 7-1 반복문이란? 반복문의 기능 세 가지 형태의 반복문 특정 영역을 특정 조건이 만족하는 동안에 반복 실행하기 위한 문장 7-1 반복문이란? 반복문의 기능 특정 영역을 특정 조건이 만족하는 동안에 반복.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
연산자 (Operator).
에어 조건문.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
3D 프린팅 프로그래밍 05 – 반복패턴 만들기 강사: 김영준 목원대학교 겸임교수.
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
Choi Seong Yun 컴퓨터 프로그래밍 기초 #06 : 반복문 Choi Seong Yun
Chapter 03. 주석문과 제어문.
제 5장 제어문 Hello!! C 언어 강성호 김학배 최우영.
김선균 컴퓨터 프로그래밍 기초 - 7th : 함수 - 김선균
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
5장 선택제어문 if 선택문 switch-case 선택문 다양한 프로그램 작성 조건 연산자.
Chapter 08. 함수.
17장. 제어문과 내장 함수 제어문 내장 함수 제어문 내장 함수.
문자열 컴퓨터시뮬레이션학과 2015년 봄학기 담당교수 : 이형원 E304호,
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
8장. 조건에 따른 흐름의 분기. 8장. 조건에 따른 흐름의 분기 8-1 흐름의 분기가 필요한 이유 상황에 따른 프로그램의 유연성 부여 그림 8-1.
[ 단원 04 ] 반복과 배열.
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
Flow Diagram IV While.
C++ 프로그래밍 기초 √ 원리를 알면 IT가 맛있다 3장. 연산자.
7장. 다양한 형태의 반복문. 7장. 다양한 형태의 반복문 7-1 반복문이란? 반복문의 기능 세 가지 형태의 반복문 특정 영역을 특정 조건이 만족하는 동안에 반복 실행하기 위한 문장 7-1 반복문이란? 반복문의 기능 특정 영역을 특정 조건이 만족하는 동안에 반복.
제 22 강 논리식 및 논리 값 shcho.pe.kr.
8장 선택 논리 II 1. 논리연산자 1.1 논리연산자 : AND (&&) 1.2 논리연산자 : OR (||)
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
프로그래밍 개론 Ⅰ-실습 2장 데이터와 식①.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
제어문Control Statements
어서와 C언어는 처음이지 제21장.
6 객체.
SPL-Duino 블록 편집기 이용하기 전류센서 블록 만들기 SPL-Duino 블록 편집기를 실행합니다.
Presentation transcript:

2007 1학기 08 반복문

반복 몸체를 1번은 실행하며, 검사부분이 뒤에 있음. 반복문 제어문 프로그램의 실행 순서는 “위에서 아래로 한 문장씩” 순차적으로 실행 반복문 프로그램에서는 일정한 규칙의 처리를 반복적으로 처리하는 모듈이 자주 필요, 이를 위한 구문이 반복문 제어문의 한 종류가 반복문 반복문 종류 반복문의 종류 구문 특징 for for(초기화; 조건검사; 증감연산) { for문 몸체(body); }; 일정한 반복 횟수를 이용하는 반복문에 적합. while while(조건검사) while문 몸체(body); 구문이 간단하며, 검사부분이 처음에 있음. do while do do while문 몸체(body); } while(조검검사); 반복 몸체를 1번은 실행하며, 검사부분이 뒤에 있음. Perfect C

for 문 반복문 for 구조 Perfect C for 다음에 괄호() 구성 초기화(Initilization), 조건검사(conditional expression), 증감연산(increment)의 세 부분으로 구성되고 이를 세미콜론(;) 으로 구분 Perfect C

for 문의 실행순서 Perfect C

문자 *를 한 줄에 5개씩 5줄 출력 Perfect C 정수형 변수 i의 초기값을 0으로 지정해서 5보다 작을 때까지, 증감연산 부분에 증가자(i++)를 이용하여 출력문을 출력 Perfect C

증감 부분의 이해 for 문의 증간연산 부분 그렇다면 아래 예문은 어떠한가? Perfect C 물론이다. 증감연산 부분에서 i++를 i=i+1로 한 것은 프로그램 기능에 차이가 없다. 연산식 i++는 i=i+1을 의미하기 때문 그렇다면 아래 예문은 어떠한가? 위 예문도 같은 결과를 처리 for (i = 0; i < 5; i = i +1) { printf("*****\n"); } for (i = 0; i < 5; ++i) { printf("*****\n"); } Perfect C

for 문이 반복되는 과정 Perfect C 1에서 10까지의 합을 구하는 for 문을 작성 이를 for 문으로 바꿔보자. 처음에 합이 저장될 변수 sum에 0을 대입하고, 반복 횟수에 대한 제한에 이용될 i를 1로 초기화 조건검사는 10번을 반복해야 하므로 i<=10이고 증감연산은 i 값을 하나씩 증가하도록 i++로 구성 sum = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10; 실행순서 1 2 3 변수 i 값 검사 (i<=10) 검사 결과 몸체실행(sum+=i) (sum = sum + i) 증감연산(i++) (i = i+1) 1(초기 값) 1 <= 10 참 sum = 0+1 1+1 2 <= 10 sum = 0+1+2 2+1 3 <= 10 sum = 0+1+2+3 3+1 4 4 <= 10 sum = 0+ … +4 4+1 5 5 <= 10 sum = 0+ … +5 5+1 6 6 <= 10 sum = 0+ … +6 6+1 7 7 <= 10 sum = 0+ … +7 7+1 8 8 <= 10 sum = 0+ … +8 8+1 9 9 <= 10 sum = 0+ … +9 9+1 10 10 <= 10 sum = 0+ … +10 10+1 11 11 <= 10 거짓 sum = 0; for (i = 1; i <= 10; i++) { sum += i; } Perfect C

반복문 while 문 Perfect C while 문 구조 while 문 실행순서 조건검사 부분인 (expression)을 while 다음에 괄호로 구성 while 문 실행순서 조건문인 expression 을 검사하여 0이 아니면(참) 반복문의 몸체에 해당하는 문장이나 블록을 실행 몸체를 실행하면 다시 조건검사를 조사하여 1의 과정을 다시 실행 조건검사가 거짓이면 while 문장을 종료 Perfect C

1부터 n까지의 곱 1에서 10까지의 곱을 구하는 while 문을 작성 이를 while 문으로 바꿔보자. Perfect C 곱한 결과를 저장할 변수 mult에 초기값 1을 대입하고, while 문의 조건식으로 (i <= 10)을 지정 while 문 몸체에 곱할 축약 대입연산자를 이용하고 조건검사에 이용할 i 값을 하나 증가 mult = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10; mult = 1; i = 1; while (i <= 10) { mult *= i; i++; } mult = 1; i = 1; while (i <= 10) { mult *= i++; } Perfect C

무한 반복 for 문에서 조건검사 부분이 없다면? while() 문에서의 조건검사 부분 Perfect C 조건검사를 무시하고 계속적으로 반복문을 수행 아래 구문은 반복문이 종료되지 않는 무한반복(indefinite loop)을 실행 while() 문에서의 조건검사 부분 옆 while 구문은 컴파일 시간에 에러가 발생 while 구문에서 조건검사 부분은 생략할 수 없음 위 while 구문으로 무한반복문을 만들려면 다음 가능 조건 부문을 참으로 지정 for ( ; ; ) { printf("*****\n"); } while ( ) { printf("*****\n"); } while ( 1 ) { printf("*****\n"); } Perfect C

do while 문장 구조 do while 문은 while 문과 유사하나 검사부분이 몸체의 마지막에 있는 것이 차이 do while 문은 조건검사를 나중에 하는 반복문에 적당 몸체 부분에 특별한 구문이 없는 경우, 반복문 do while 의 몸체는 적어도 한번은 실행 Perfect C

10진수 자릿수 반대로 Perfect C 정수 125에서 각각의 자릿수 1, 2, 5를 그 순서를 반대로 분리해 내는 방법 나머지 연산자 %를 이용하면 항상 단 단위 자릿수의 수를 알 수 있음 실행순서 1 2 수 수 % 10 결과 수 / 10 125 125 % 10 5 125 / 10 12 12 % 10 12 / 10 1 % 10 1 / 10 Perfect C

예제 소스 dowhilereverse.c 입력한 정수를 반대로 출력하는 프로그램을 작성 Perfect C

반복문 내부의 반복문 nestedfor.c Perfect C

콤마 연산자의 이용 초기화와 증감부분에 여러 개의 문장 기술 Perfect C

break와 continue break continue Perfect C 세 종류 반복문(for, while, do while)에서 무조건 반복문을 종료하려면 break 문을 이용 반복문에서 break의 역할은 반복을 종료하고 반복문 다음 문장으로 실행 흐름을 바꾸는 역할 continue continue 문은 반복문을 완전히 종료하는 것이 아니라, continue 문이 있는 몸체의 continue 문 아래 부분은 실행되지 않고, 다음 반복을 계속하는 문장 Perfect C

프로그래밍 실습 프로그램 목적 구현 Perfect C 1부터 n까지의 소수(prime number)를 출력하는 프로그램을 작성 하나의 정수 number가 소수임을 알려면 2부터 number-1까지의 모든 정수에 대하여 나누어 떨어지지 않음을 보이면 된다. 즉 5가 소수임을 보이는 방법은 다음과 같이 2부터 4까지 5를 나누어 봄 나누는 수(i) 수 % i 결과 2 5 % 2 == 1 !=0 3 5 % 3 == 2 4 5 % 4 == 1 Perfect C

프로그래밍 실습 구현 구현 이 반복문은 몸체가 없는 for 문으로, for 문을 빠져 나오는 경우는 두 가지 경우 하나는 중간의 수로 나누어져 나오는 경우이고, 나머지는 계속 반복문을 반복하여 자기 자신으로 나누어진 경우 이 두 가지 중, 후자가 소수임을 나타냄 Perfect C

소스와 결과 Perfect C

중간점검 Perfect C 모든 for 문을 while 문으로 바꿀 수 있겠는가? 바꿀 수 있다면 어떻게 수정이 가능한가? 표준입력으로 받은 정수를 출력하는 과정을 반복하는 구문 do while 문을 이용하여 작성하시오. 다만 0을 입력하면 프로그램을 종료하도록 한다. 99에서 1까지 홀수 정수를 출력 for (x=99; x >=1; x-=2) printf(“%d\n”, x); Perfect C

중간점검 Perfect C 다음 반복문의 수행 후, 변수 sum에는 무슨 값이 저장되는가? … sum = 0; for ( i = 1; i <= 100; ) sum += i++; sum += ++i; for ( i = 0; i < 100; ) Perfect C

중간점검 Perfect C 다음 반복문의 수행 후, 변수 sum에는 무슨 값이 저장되는가? … sum = 0; for ( i = 1; i <= 100; ) sum += ++i; for ( i = 1; i <= 100; sum += ++i) ; 어떤 결과? for (x=99; x >=1; x -= 2) printf(“%d\n”, x); Perfect C

이해점검 Perfect C C 언어에서 제공하는 3가지 반복문은 ( ), ( ), ( )(이)다. 반복문은 모두 반복문의 계속실행을 검사하는 조건검사 부분과 반복 처리를 위한 문장으로 구성되는 ( 몸체 )(으)로 구성된다. 반복문에서 반복의 몸체가 여러 문장으로 구성되면 이를 중괄호를 이용한 ( 블록 )(으)로 구성해야 한다. 반복문 for 구조는 for 다음에 괄호( ) 부분이 초기화(Initialization), 조건검사(Conditional expression), 증감연산(Increment)의 세 부분으로 구성되고 이를 ( )(으)로 구분한다. 반복 구조에서 반복을 종료하는 문장은 ( ) 문이다. 반복문 세 종류 중에서 반복 조건검사를 몸체를 실행한 후 나중에 검사하는 문장은 (do while) 문이다. for 문을 for (1;2;3) {4};으로 표현하면 가장 나중에 실행하는 문장은 ( )번 문장이다. 반복의 제어 횟수를 이용한 구조에 가장 적합한 반복문은 ( ) 문이다. ( ) 문은 반복문을 완전히 종료하는 것이 아니라, 이 문장 이후의 몸체 부분은 실행되지 않고, 다음 반복을 계속하는 문장이다. 반복문 for 문에서 초기화와 증감부분에 ( ) 연산자를 이용하여 여러 개의 문장을 기술할 수 있다. Perfect C

프로그래밍 과제 3. 섭씨온도가 0부터 200까지 20씩 증가, 이 때의 화씨온도를 구하여 출력하는데, 온도는 모두 정수 형태로 출력 for(c =0; c <=200; c += 20) 5. 다음을 출력하는 프로그램을 for 문을 이용하여 작성하시오. 10 210 3210 43210 543210 for (i = 0; i <= MAX; i++) { for (j = MAX; j >= 0; j--) if (j > i) putchar(' '); else printf("%d", j); } putchar('\n'); Perfect C

프로그래밍 과제 6. 다음과 같이 0부터 5까지의 수로 삼각형을 만들어 출력하는 프로그램을 for 문을 이용하여 작성하시오. 101 21012 3210123 432101234 54321012345 for (i = 0; i <= MAX; i++) { for (j = MAX; j >= -MAX; j--) if (abs(j) > i) putchar(' '); else printf("%d", abs(j)); } putchar('\n'); Perfect C

프로그래밍 과제 Perfect C 실습 : 본문, 프로그래밍 과제 1~10 과제 : 다음주 월요일(4/16) 까지 제출할 것 for (i = 'z'; i >= 'a'; i--) { //변수 j를 이용하여 한 행에서 출력해야 할 알파벳을 선정 for (j = 'a'; j <= 'z'; j++) (i > j) ? putchar(' ') : putchar(j); putchar('\n'); } 실습 : 본문, 프로그래밍 과제 1~10 과제 : 다음주 월요일(4/16) 까지 제출할 것 8장 프로그래밍 과제 2, 6, 8, 10 소스코드와 출력화면 캡처한 그림을 워드파일로 작성하여 제출할 것 Perfect C