반응형
Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
05-19 00:03
관리 메뉴

ImJay

PHP 프로그래밍 입문 제 5장 연습문제 풀이 본문

대학생활/웹프로그래밍

PHP 프로그래밍 입문 제 5장 연습문제 풀이

ImJay 2022. 4. 17. 23:03
반응형

PHP 프로그래밍 입문 제 5장 연습문제 풀이


연습문제 5-1. 다음은 배열을 이용하여 어떤 과목에 대한 학생 10명의 점수 합계와 평균을 구하는 프로그램이다. 빈칸을 채워 프로그램을 완성하시오.

출력 포맷

입력된 점수 : 87 76 98 87 87 93 79 85 88 63

합계 : 843, 평균 : 84.3

<?php
	$score = array(87, 76, 98, 87, 87, 93, 79, 85, 88, 63); // 입력된 점수
	$sum = 0; // 합계
	for($i=0; $i<10; $i++) // 0~9번 학생까지
		$sum = $sum + $score[$i]; # 점수를 모두 더하기

	$avg = $sum/10; # 평균 구하기
	echo "입력된 점수 : "; # 출력

	for($i=0; $i<10; $i++) # 0~9번 학생까지
		echo $score[$i]." "; # 점수를 모두 출력

	echo "<br>";
	echo("합계 : $sum, 평균 : $avg"); # 결과 출력
?>

연습문제 5-1 결과화면

연습문제 5-2. 다음은 배열을 이용하여 학생 10(**, **, **, **, **, **, **, **, **, **)5개 과목(파이썬, PHP, 자바스크립트, 사진, 영화감상)별 성적 합계와 평균을 구하는 프로그램이다. 빈칸을 채워 프로그램을 완성하시오.

출력포맷

파이썬의 합계 : 888, 평균 : 88.8

PHP의 합계 : 809, 평균 : 80.9

영화감상의 합계 : 840, 평균 : 84

<?php
	// 과목, 학생, 점수 선언
	$subject = array("파이썬", "PHP", "자바스크립트", "사진", "영화감상");
	$name = array("김**", "이**", "정**", "장**", "황**", "이**", "최**", "함**", "도**", "강**");

	$score = array(array(80, 79, 90, 89, 100, 87, 85, 83, 96, 99),
					array(70, 88, 70, 85, 60, 95, 77, 89, 82, 93),
					array(80, 79, 90, 89, 100, 87, 85, 83, 96, 99),
					array(70, 88, 70, 85, 60, 95, 77, 89, 82, 93),
					array(85, 66, 80, 88, 90, 86, 85, 93, 88, 79));

	for($i=0; $i<=4; $i++) { // 5개 과목을 반복
		$sum = 0; // 합계 초기화
		for($j=0; $j<=9; $j++) // subject[i] 과목에 대해 학생 10명의 점수를
			$sum = $sum + $score[$i][$j]; // 모두 더하기

		$avg = $sum/10; // subject[i] 과목의 평균 구하기
		echo "{$subject[$i]}의 합계 : $sum, 평균 : $avg <br>"; // 결과 출력
	}
?>

연습문제 5-2 결과화면

연습문제 5-3. 2번 문제의 학생별로 5개 과목의 성적 합계와 평균을 구하는 프로그램을 작성하시오.

출력포맷

** 학생의 합계 : 385, 평균 : 77

** 학생의 합계 : 400, 평균 : 80

** 학생의 합계 : 463, 평균 : 92.6

<?php
	// 과목, 학생, 점수 선언
	$subject = array("파이썬", "PHP", "자바스크립트", "사진", "영화감상");
	$name = array("김**", "이**", "정**", "장**", "황**", "이**", "최**", "함**", "도**", "강**");

	$score = array(array(80, 79, 90, 89, 100, 87, 85, 83, 96, 99),
					array(70, 88, 70, 85, 60, 95, 77, 89, 82, 93),
					array(80, 79, 90, 89, 100, 87, 85, 83, 96, 99),
					array(70, 88, 70, 85, 60, 95, 77, 89, 82, 93),
					array(85, 66, 80, 88, 90, 86, 85, 93, 88, 79));

	for($i=0; $i<=9; $i++) { // 10명의 학생을 반복
		$sum = 0; // 합계 초기화
		for($j=0; $j<=4; $j++) // name[i] 학생에 대한 점수를
			$sum = $sum + $score[$j][$i]; // 모두 더하기
		
		$avg = $sum/5; // name[i] 학생의 평균 구하기
		echo "{$name[$i]} 학생의 합계 : $sum, 평균 : $avg <br>"; // 결과 출력
	}
?>

연습문제 5-3 결과화면

 

연습문제 5-4. 다음은 HTML<table> 태그와 배열을 이용하여 구구단 표를 만드는 프로그램이다. 빈칸을 채워 프로그램을 완성하시오.

출력 포맷

2 3 4 5 6 7 8 9
2 x 1 = 2 3 x 1 = 3 4 x 1 = 4 5x 1 = 5 6 x 1 = 6 7 x 1 = 7 8 x 1 = 8 9 x 1 = 9
2 x 2 = 4 3 x 2 = 6 4 x 2 = 8 5 x 2 = 10 6 x 2 = 12 7 x 2 = 14 8 x 2 = 16 9 x 2 = 18
2 x 3 = 6 3 x 3 = 9 4 x 3 = 12 5 x 3 = 15 6 x 3 = 18 7 x 3 = 21 8 x 3 = 24 9 x 3 = 27
2 x 4 = 8 3 x 4 = 12 4 x 4 = 16 5 x 4 = 20 6 x 4 = 24 7 x 4 = 28 8 x 4 = 32 9 x 4 = 36
2 x 5 = 10 3 x 5 = 15 4 x 5 = 20 5 x 5 = 25 6 x 5 = 30 7 x 5 = 35 8 x 5 = 40 9 x 5 = 45
2 x 6 = 12 3 x 6 = 18 4 x 6 = 24 5 x 6 = 30 6 x 6 = 36 7 x 6 = 42 8 x 6 = 48 9 x 6 = 54
2 x 7 = 14 3 x 7 = 21 4 x 7 = 28 5 x 7 = 35 6 x 7 = 42 7 x 7 = 49 8 x 7 = 56 8 x 7 = 63
2 x 8 = 16 3 x 8 = 24 4 x 8 = 32 5 x 8 = 40 6 x 8 = 48 7 x 8 = 56 8 x 8 = 64 9 x 8 = 72
2 x 9 = 18 3 x 9 = 27 4 x 9 = 36 5 x 9 = 45 6 x 9 = 54 7 x 9 = 63 8 x 9 = 72 9 x 9 = 81
<?php
	echo "<table border=1>";
	echo "<tr align=center>";
	echo "<th width=100>2단</th>";
	echo "<th width=100>3단</th>";
	echo "<th width=100>4단</th>";
	echo "<th width=100>5단</th>";
	echo "<th width=100>6단</th>";
	echo "<th width=100>7단</th>";
	echo "<th width=100>8단</th>";
	echo "<th width=100>9단</th>";
	echo "</tr>";
	// html 태그로 표 생성, 글자 정렬 및 너비 설정

	for($i=0; $i<=9; $i++) // $i+2: 2~9단
		for($j=0; $j<=9; $j++) // $j는 곱해지는 수
			$result[$i][$j] = ($i+2) * ($j+1);
			// 이차원 배열 $result는 구구단 결과를 저장
	
	for($j=0; $j<=8; $j++) { // 곱해지는 수만큼 반복
		echo "<tr align=center>"; // 가운데 정렬
		for($i=0; $i<=7; $i++) { // $i+2 : 2~9단
			$a = $i + 2; 
			$b = $j + 1;
			$c = $result[$i][$j];
			echo "<td>$a x $b = $c</td>"; // 표에 구구단 채워넣기
		}
		echo "</tr>";
	}
	echo "</table>";
?>

연습문제 5-4 결과화면

궁금하신 점은 댓글 부탁드립니다.

반응형
Comments