PHP 3 - 반복문 (WHILE, DO..WHILE, FOR)

PHP 3 - 반복문 (WHILE, DO..WHILE, FOR)

1. While문과 Do..While문

while (조건) { 실행문; }

- 조건이 참인 동안 실행문이 반복되어 실행된다.

- 반복을 벗어나기 위해서는 실행 문내에 조건을 변경하거나 break문이 필요하다.

- 조건에 변화가 없으면 무한 반복된다.

- 조건은 실행문이 반복될 때마다 반복해서 실행된다.

$a = 1; // 초기식 while ($a <= 10) { // 조건 echo(" {$a} "); // 명령문 $a++; // 증감식 }

While뿐 아니라 do..while문이나 for문에서도 반복문의 네 가지 요소(초기식, 조건, 증감식, 명령문)는 항상 동

일하다.

2. For문

for (초기식; 조건; 증감식) { 실행문; }

- 일반적으로 사용

- 조건이 참인 동안 실행문을 반복 실행한다.

- 초기식은 맨 처음 한 번만 실행된다.

- for문은 반복 횟수를 구체적으로 확인 가능함으로 반복문 중에 가장 가독성이 좋다.

잘못된 값 입력 시 사용하는 코드

if($num < 1 ) { echo(" window.alert('1보다 큰값을 입력하세요'); history.go(-1); "); exit; }

while, for문 실습

예제 3-1. 0 보다 큰 값을 입력받아 1에서 입력 값까지의 합을 출력한다.

3-1.html

3-1.html 입력 폼파일 1보다 큰 값을 입력하세요 :

while 문 3-1.php

1) { while($a <= $num) { // 조건, $a가 $num보다 커지면 반복을 종료한다. $sum = $sum + $a; echo("\$a: {$a}, \$sum: {$sum}"); $a++; // 증감식 } echo(""); echo("1에서 {$num}까지의 합은 {$sum}입니다."); } else echo("입력 값이 올바르지 않습니다."); echo(""); show_source(__FILE__); ?>

실행결과

예제 3-1 for문

3-1f.php

window.alert('1보다 큰값을 입력하세요'); history.go(-1); "); exit; } $sum = 0; for($a = 1; $a <= $num; $a++){ $sum = $sum + $a; echo("\$a: {$a}, \$sum: {$sum}"); } echo(""); echo("1에서 {$num}까지의 합은 {$sum}입니다."); echo(""); show_source(__FILE__); ?>

실행결과

실습 1. 0보다 큰 정수를 입력받아 입력받은 정수까지 홀수의 합과 짝수의 합을 각각 출력하는 프로그램을 작성한다.

* while문과 for문을 둘 다 사용해 작성 (두 번 출력하기)

3-ex01.html

3-ex01.html 입력 폼파일 0보다 큰 값을 입력하세요 :

3-ex01.php

window.alert('0보다 큰값을 입력하세요'); history.go(-1); "); exit; } $sum_odd = 0; $sum_even = 0; $i=1; while($i <= $num) { if($i % 2 == 0){ $sum_even += $i; } else { $sum_odd += $i; } echo("\$i: {$i}, \$sum_odd: {$sum_odd}, \$sum_even: {$sum_even}"); $i++; } echo(""); echo("while문"); echo("0에서 {$num}까지 홀수합: {$sum_odd}, 짝수합: {$sum_even}"); echo(""); $sum_odd = 0; $sum_even = 0; for($a = 1; $a <= $num; $a++){ if($a % 2 == 0){ $sum_even += $a; } else{ $sum_odd += $a; } echo("\$i: {$i}, \$sum_odd: {$sum_odd}, \$sum_even: {$sum_even}"); } echo(""); echo("for문"); echo("0에서 {$num}까지 홀수합: {$sum_odd}, 짝수합: {$sum_even}"); echo(""); show_source(__FILE__); ?>

실행결과 실행결과 show_source(__FILE__)

from http://lemonandgrapefruit.tistory.com/96 by ccl(A) rewrite - 2021-11-05 17:27:12