HTML/CSS/JAVASCRIPT 강의실

시삽: 레드플러스 님 
게시판 이동:
 제목 : 성적처리 예제(1차원 배열 사용)
글번호: 265
작성자: 레드플러스
작성일: 2014/06/06 오전 1:05:00
조회수: 3409
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>성적처리 예제(1차원 배열 사용)</title>
    <style>
        .headerStyle {
            background-color:yellow;
            font-weight:bold;
        }
    </style>
</head>
<body>
    <script>
        var kor = [100, 90, 80];
        var eng = [90, 95, 88];
        var mat = [80, 88, 95];

        var tot = [0, 0, 0];
        var avg = [0, 0, 0];
        var rank = [1, 1, 1];

        for (var i = 0; i < 3; i++) {
            tot[i] = kor[i] + eng[i] + mat[i]; // 총점
            avg[i] = tot[i] / 3.0; // 평균
        }

        // 순위 알고리즘
        for (var i = 0; i < 3; i++) {
            rank[i] = 1; // 1등으로 초기화
            for (var j = 0; j < 3; j++) {
                if (tot[i] < tot[j]) {
                    rank[i] = rank[i] + 1; // 등수 증가
                }
            }
        }

        document.write("<h3>성적 리스트(입력순)</h3>");
        document.write("<table border='1' width='600'>");
        document.write("<tr align='center' bgcolor='yellow'><td>국어</td><td>영어</td><td>수학</td><td>총점</td><td>평균</td><td>순위</td></tr>");
        for (var i = 0; i < 3; i++) {
            document.write(
                "<tr><td>" + kor[i] + "</td><td>" + eng[i] + "</td><td>" + mat[i] + "</td><td>"
                + tot[i] + "</td><td>" + Math.round(avg[i]) + "</td><td>" + rank[i] + "</td></tr>");
        }
        document.write("</table>");

        // 정렬 알고리즘(선택 정렬)        
        var temp = 0;
        for (var i = 0; i < 3 - 1; i++) {
            for (var j = i + 1; j < 3; j++) {
                if (rank[i] > rank[j]) {
                    temp = kor[i];
                    kor[i] = kor[j];
                    kor[j] = temp;

                    temp = eng[i];
                    eng[i] = eng[j];
                    eng[j] = temp;

                    temp = mat[i];
                    mat[i] = mat[j];
                    mat[j] = temp;

                    temp = tot[i];
                    tot[i] = tot[j];
                    tot[j] = temp;

                    temp = avg[i];
                    avg[i] = avg[j];
                    avg[j] = temp;

                    temp = rank[i];
                    rank[i] = rank[j];
                    rank[j] = temp;
                }
            }
        }
        
        document.write("<h3>성적 리스트(성적순)</h3>");
        document.write("<table border='1' width='600'>");
        document.write("<tr style='text-align:center;' class='headerStyle'><td>국어</td><td>영어</td><td>수학</td><td>총점</td><td>평균</td><td>순위</td></tr>");
        for (var i = 0; i < 3; i++) {
            document.write(
                "<tr><td>" + kor[i] + "</td><td>" + eng[i] + "</td><td>" + mat[i] + "</td><td>"
                + tot[i] + "</td><td>" + Math.round(avg[i]) + "</td><td>" + rank[i] + "</td></tr>");
        }
        document.write("</table>");
    </script>
</body>
</html>
 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트
  dongjoo0191
  2014-06-06 오후 9:40:20
감사합니다. 선생님
공부하는데
덕분에 많은 도움 되었습니다.  

(댓글을 남기려면 로그인이 필요합니다.)

관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 div 영역의 스크롤이 늘어날 때 맨 아래로 이동(표시) DivScrolling.png(47 KB) 레드플러스 2014-10-02 3254
현재글 성적처리 예제(1차원 배열 사용)(1) - 레드플러스 2014-06-06 3409
다음글 브라우저 왼쪽/오른쪽 중간에 항상 고정된 텍스트/이미지 배치하기 ViewSwitcher.png(4 KB) 레드플러스 2014-04-15 3461
 
손님 사용자 Anonymous (손님)
로그인 Home