• 검색 결과가 없습니다.

반복문

N/A
N/A
Protected

Academic year: 2022

Share " 반복문 "

Copied!
20
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

컴퓨터 프로그래밍-6

(2)

반복문

1. 지정된 반복 횟수만큼 수행하는 for 문 2. 조건을 먼저 검사하는 while문

3. 조건을 나중에 검사하는 do~while문

(3)

1. 지정된 반복 횟수만큼 수행하는 for문

for(초기식; 조건식; 증감식){

문장1;

문장2;

...

문장n;

}

다음문장;

[동작 원리]

① 처음에 초기값 실행

② 조건식을 평가하여 참이면 문장1~문장n까지 실행

③ 증감식 실행

④ 조건식 평가하여 참이면 다시 문장1~문장n까지 실행⑤ 거짓이면 반복 문에서 벗어나 다음 문장이 실행

(4)

1. 지정된 반복 횟수만큼 수행하는 for 문

비효율 적인 방법 반복문 사용한 효율적인 방법

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

System.out.println("Hello World!");

int i;

for(i=1; i<=10; i++)

System.out.println("Hello World!");

(5)

1. 지정된 반복 횟수만큼 수행하는 for 문

(6)

<예제>제어변수 값 출력하기

01:class For02{

02: public static void main(String[] args) { 03: int i;

04:

05: for(i=1; i<=4; i++)

06: System.out.println(i ); //제어변수 i값을 출력 07:

08: System.out.println("--->> " + i );

09: } 10}

(7)

<예제> for문의 다양한 활용

01:class For03{

02: public static void main(String[] args) { 03: int i;

04:

05: // i의 초기값을 1로 하여 1씩 증가하면서 10일 때까지 반복 06: for(i=1; i<=10; i++)

07: System.out.print(" " + i );

08: System.out.println("\n --- - >> " );

09:

10: // i의 초기값을 1로 하여 2씩 증가하면서 10일 때까지 반복 11: for(i=1; i<=10; i+=2)

12: System.out.print(" " + i );

13: System.out.println("\n --- - >> " );

(8)

<예제> for문의 다양한 활용

14:

15: // i의 초기값을 2로 하여 2씩 증가하면서 10일 때까지 반복

16: for(i=2; i<=10; i+=2)

17: System.out.print(" " + i );

18: System.out.println("\n --- - >> " );

19:

20: // i의 초기값을 10으로 하여 1씩 감소하면서 1보다 크거나 같을 때까지 반복

21: for(i=10; i>=1; i--)

22: System.out.print(" " + i );

23: System.out.println("\n --- - >> " );

24: } 25:}

(9)

<예제> 2단 출력하기

01:class For04 {

02: public static void main(String[] args) { 03: int i; //제어변수 선언

04: int a=2; //출력할 단을 저장하는 변수 선언, 2단 출력 05:

06: System.out.println("<<---" + a + "단--->> " );

07: for(i=1; i<=9; i++)

08: System.out.println(a + " * " + i + " = " + (a * i) );

09: } 10:}

(10)

<예제> 입력받은 단 출력하기

01:class For04_1 {

02: public static void main(String[] args) { 03: int i, n=0;

//출력하고자하는 단을 명령행에서 5를 입력 받았다면 04: int a=Integer.parseInt(args[0]);

05: System.out.println("<<---" + a + "단--->> " );

06: for(i=1; i<= 9; i++){

07: n=a*i;

08: System.out.println(a + " * " + i + " = " + n );

09: } 10: }

11:}

(11)

<예제> 입력받은 문자를 입력받은 숫자만큼 반 복해서 출력하기

01:class For05{

02: public static void main(String[] args) { 03: int i; //제어변수

04: int repeat; //반복 횟수를 결정할 변수 05: String outStr=args[0];

06: repeat = Integer.parseInt(args[1]);

07: for(i=1; i<=repeat; i++)

08: System.out.print(" " + outStr);

09: } 10:}

(12)

for문을 이용한 합 구하기

① int total = 0; 우선 합을 누적할 변수 total을 선언 하고 0으로 초기화한다.

②for(i = 1; i<=5; i++) 구하고자 하는 합이 1부터 5사이의 자연수의 합이라면 제어변수 i이 1 부터 5까지 1씩 증가하도록 한다.

③ total += i; 반복문 내에서 변하는 제어변수 i의

값을 total 변수에 누적한다.

(13)

<예제> 1부터 5까지 합 구하기

01:class For06{

02: public static void main(String[] args) { 03: int i; //제어변수 선언

04: int total = 0; //합을 누적할 변수 total을 선언하고 0으로 초기화

05:

06: for(i=1; i<=5; i++) //제어변수 i이 1부터 5까지 1씩 증가하도록 함

07: total +=i; // total = total + i;

08: System.out.println("1 ~ " + (i-1) + " = " + total);

09:

10: } 11:}

(14)

<예제> 팩토리알 구하기

01:class For07{

02: public static void main(String[] args) { 03: int i; //제어변수 선언

04: int n;

05: int fac = 1; //팩토리알을 누적할 변수 선언 시 초기값을 1로 줌 06: n = Integer.parseInt(args[0]); //키보드에서 5를 입력받았다면 07:

08: for(i=1; i<=n; i++) //1부터 5사이의 자연수를 구함

09 fac*=i; //fac=fac*i; //자연수를 곱해서 누적하여 팩토리알을 구함

10: System.out.println( n + "! --- >> " + fac );

11: }

12: }

(15)

2. 조건을 먼저 검사하는 while문

while( 조건식 ){

실행문; //조건식에 만족할 경우 반복 처리할 문장 }

다음 문장;

(16)

2. for문과 while문 비교

for( i=1; i<=5 i++)

System.out.println("Hello World!");

i=1;

while(i<=5){

System.out.println("Hello World!");

i++;

}

(17)

<예제> 1부터 5사이의 자연수 출력하기

01:class While01 02:{

03: public static void main(String[] args) 04: {

05: int i;

06: for(i=1; i<=5; i++)

07: System.out.print(" " +i);

08: System.out.println("\n---");

09:

10: i=1; //초기식 11: while(i<=5){ //조건식

12: System.out.print(" " +i); //반복 처리할 문장 13: i++; //증감식

14: }

15: } 16:}

(18)

<예제> 다양한 while문 살펴보기

01:class While02 02:{

03: public static void main(String[] args) 04: {

05: int i=1;

06: while(i++<=4)

07: System.out.print( i + ", " );

08: System.out.println("\n--- >>" );

09:

10: i=1;

11: while(++i<=4)

12: System.out.print( i + ", " );

13: System.out.println("\n--- >>" );

(19)

<예제> 다양한 while문 살펴보기

14:

15: i=0;

16: while(i++<=4)

17: System.out.print( i + ", " );

18: System.out.println("\n--- >>" );

19: } 20:}

(20)

<예제> 1부터 10사이의 짝수의 합 구하기

01:class While04 {

02: public static void main(String[] args) { 03: int n; //제어변수 선언

04: int tot=0; //합을 누적할 변수 선언

05: n=0; //제어변수 n를 0으로 초기화

06: while(n<=8){ //제어변수 n이 8보다 작거나 같을 때까지 반복 수행

07: n+=2; //제어변수 n을 2씩 증가한 후

08: tot += n; //제어변수 n을 합을 누적할 변수에 더한다. 09: }

10: System.out.println("tot = "+tot); //반복문에서 벗어나면 합을 출력한 다.

11: } 12:}

참조

관련 문서

숫자가 높을수록 나중에

국문 초록 반복 구조를 활용한 창의적 산출물 만들기 STEAM 프로그램 적용 효과 문 정 환 제주대학교 교육대학원 초등과학교육전공 지도교수 홍 승 호

선박관리업은 업무가 사용되는 지역이나 사용되는 상황, 시대에 따라 그 내용이 조금씩 상이하며 협의의 선박관리 기능에서 선원배승업무에 중점을 둔

입력 데이터 리스트가 구성되면 이 리스트에 포함되어 있는 입력 데이터를 이용하여 소프트웨어를 실행시키고 그 과정에 서 발견되는 기본 블록과 분기 블록을 HCFG에

2반복문Loop_ 1.For loop For 반복변수=초기값:증분값:최종값 문장 End 2.While 문 While반복문은 특별한 조건을 만족시키면 반복과정을 끝 내거나,진행방향에 패스의

이 문제는 등비수열 및 수열의 합을 이용하여 산술의 기본 적인 계산을 수행하는 능력을 충실하게 파악하고 진단하는데 있다... 이 문제는 로그의 및 과 진수 조건을

또한 병렬디코더 구현에서는 FFmpeg 소스를 사용하며, multi-core CPU의 성능을 최대로 끌어내기 위하여 절반의 기능만 구현 되어 있는 병렬처리 기능을

 따라서 파이썬 기본 문법으로서 데이터 타입과 순서열 연 산, 내장함수, 변수활용, 조건문과 while 반복문, for 반복 문, 함수운용, 클래스와 모듈 등을