웹프로그래밍 4주차 2차시 강의내용
지난 시간 보충 (match 사용법)
<?php
$a = match ($a) {
1 => $b + 2,
2 => $b * 2,
default => $b % 2
};
?>
콤마를 이용하여 케이스를 구별하며, 계산식이 끝날 때 세미콜론을 사용해준다.
PHP에서 반복문(Loop Statement)의 종류는 네 가지이다.
1. while
2. do~while
3. for
4. foreach
※ while문과 for문은 서로 완전히 대체가 가능하다.
1. while 사용법
while (조건문) {
명령문;
}
- 보통 반복 조건이 횟수가 아니라 특수한 조건이거나 몇 번 반복할지 모를 때 주로 사용한다.
2. do~while 사용법
do {
명령문;
} while (조건문);
- 최소한 한 번 이상 명령문을 반복한다.
3. for 사용법
for ( 변수 초기화; 조건식; 변경부 ) {
명령문;
}
- 반복횟수가 정해져 있을 때 주로 사용한다. (횟수 중심)
4. foreach 사용법
foreach ($배열 as $값) {
명령문;
}
- 배열과 함께 쓰는 반복문이다.
breakㆍcontinue 키워드
break는 반복문을 빠져나오는 키워드이고,
continue는 반복문의 처음 부분으로 되돌아가는 키워드이다.
배열
선언하는 방법
1. $x = array(1, 4, 2, 5, 3);
2. $x = [1, 4, 2, 5, 3]; 여기에서 대괄호를 배열 연산자라고 한다.
사용하는 방법
$x[인덱스 번호] = 13;
예제 코드 (여러가지 반복문을 이용하여 주사위를 던지고 나온 수의 합을 구하기)
<?php
echo "<h1>주사위 10번 던지고 나온 수의 합</h1>";
$sum = 0; // 초기화 필요, 누적되는 변수이기 때문
$n = 1; // 반복 제어변수의 초기화
while($n <= 10) { // 조건식, 반복을 종료하는 조건을 적어 줌, 반복문 속에 사용하는 키워드 : break, continue
$sum += mt_rand(1,6); //
$n++; // 반복 제어변수 변경, 다음 번 반복을 위한 준비.
}
echo "<h3>총합 = $sum</h3>";
echo "<h1>주사위 10번 던지고 나온 수의 합</h1>";
$sum = 0;
$n = 1;
while($n <= 10) {
$num = mt_rand(1,6);
if(($num != 3 && $num != 4) $sum += $num;) // 주사위 던지고 3,4는 제외 . 카운트가 누적 된다. $n++ 무조건 while문이 10번 돈다.
$n++;
}
echo "<h3>총합 = $sum</h3>";
echo "<h1>주사위 10번 던지고 나온 수의 합</h1>";
$sum = 0;
$n = 1;
while($n <= 10) {
$num = mt_rand(1,6);
if($num == 3 || $num == 4) continue; // 주사위 던지고 3,4는 제외, continue하면 다시 while문으로 올라감. 카운트가 누적되지 않는다.($n++) while문이 10번 이상 돈다.
$sum += $num;
// 누적 값이 30을 초과하면 반복 종료
if($sum > 30) break;
$n++;
}
echo "<h3>총합 = $sum</h3>";
echo "<h1>주사위 10번 던지고 나온 수의 합</h1>";
$sum = 0;
for($n = 1; $n <= 10; $n++) {
$num = mt_rand(1,6);
if($num == 3 || $num == 4) continue; // 주사위 던지고 3,4는 제외, continue하면 다시 while문으로 올라감. 카운트가 누적되지 않는다.($n++) while문이 10번 이상 돈다.
$sum += $num;
// 누적 값이 30을 초과하면 반복 종료
if($sum > 30) break;
}
echo "<h3>총합 = $sum</h3>";
echo "<h3>던진 횟수 = $n</h3>";
echo "<hr>";
# foreach구문 연습
$point = array(5500, 11200, 3400, 800); // 배열 선언
// var_dump($point); 변수를 확인해보는 것임 무슨변수인지
// for문으로 모든 포인트값의 합을 구하기
$total = 0;
for($i = 0; $i < 4; $i++)
$total += $point[$i];
echo "point의 총합은 $total";
// foreach
foreach($point as $p)
$total += $p;
echo "foreach사용 $total";
?>
LIST
'📖 Coding Study > 웹 프로그래밍' 카테고리의 다른 글
2023.05.01 월 (DB) (0) | 2023.05.01 |
---|---|
2023.04.04 화 (PHP 다차원 배열) (0) | 2023.04.04 |
2023.04.03 월 (PHP 배열) (0) | 2023.04.03 |
2023.03.27 월 (PHP 조건문) (0) | 2023.03.27 |
2023.03.14 화 (PHP 실습) (0) | 2023.03.14 |