Bài tập vòng lặp for trong Javascript

Vòng lặp for đóng vai trò quan trọng khi lập trình với Javascript nên việc nắm vững nó là điều bắt buộc, vì vậy eLib sẽ tổng hợp một số bài tập liên quan tới vòng lặp và giải sẵn cho các bạn tham khảo.

Mục lục nội dung

Bài tập vòng lặp for trong Javascript

1. Bài 01

Xây dựng chương trình có một ô Input, một button. Khi click vào button thì in các số từ 1 tới giá trị của ô input

Code mẫu:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
        <script language="javascript">
            function print_number()
            {
                // Lấy number
                var number = document.getElementById("number").value;
                
                // Ép number sang kiểu INT
                number = parseInt(number);
                
                // Lặp để in kết quả
                var html = '';
                for (var i = 1; i <= number; i++){
                    html += i + ' <br/>';
                }
                document.getElementById("result").innerHTML = html;
            }
        </script>
        <form method="get" action="">
            Nhập số: <input type="text" id="number" value="0"/>
            <input type="button" value="In kết quả" onclick="print_number()"/>
        </form>
        <div id="result">

        </div>
    </body>
</html>

2. Bài 02

Viết chương trình có một ô input, một button. Khi click vào button thì in ra các số nguyên tố từ 1 tới giá trị của ô input

Code:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
        <script language="javascript">
            // hàm kiểm tra số nguyên tố
            function kiem_tra_snt(n)
            {
                // Biến cờ hiệu
                var flag = true;

                // Nếu n bé hơn 2 tức là không phải số nguyên tố
                if (n < 2) {
                    flag = false;
                }
                else if (n == 2) {
                    flag = true;
                }
                else if (n % 2 == 0) {
                    flag = false;
                }
                else {
                    // lặp từ 3 tới n-1 với bước nhảy là 2 (i+=2)
                    for (var i = 3; i <= Math.sqrt(n); i += 2)
                    {
                        if (n % i == 0) {
                            flag = false;
                            break;
                        }
                    }
                }
                
                return flag;
            }

            // Hàm in ra các số nguyên tố từ 1 tới n
            function print_snt()
            {
                // Lấy number
                var number = document.getElementById("number").value;

                // Ép number sang kiểu INT
                number = parseInt(number);

                // Lặp để in kết quả
                var html = '';
                for (var i = 1; i <= number; i++) {
                    // Nếu là số nguyên tố thì in ra
                    if (kiem_tra_snt(i)){
                        html += i + ' <br/>';
                    }
                }
                document.getElementById("result").innerHTML = html;
            }
        </script>
        <form method="get" action="">
            Nhập số: <input type="text" id="number" value="0"/>
            <input type="button" value="In kết quả" onclick="print_snt()"/>
        </form>
        <div id="result">

        </div>
    </body>
</html>

3. Bài 3

Cho 10 thẻ div, hãy viết chương trình khi click vào button thì sẽ đổi màu cho các thẻ div. Nếu div nào vị trí chẵn thì background màu đỏ và lẽ thì background màu xanh.

Đối với bài này chúng ta sẽ lấy danh sách các thẻ div, sau đó sử dụng vòng lặp for để kiểm tra, nếu thẻ nào nằm vị trí chẵn thì đổi thành màu đỏ và vị trí lẽ đổi thành màu xanh.

Vì kết quả trả về sẽ là một mảng bắt đầu bằng 0 nên khi kiểm tra chẵn lẽ ta phải cộng thêm một nữa:

  • (i+1) % 2 == 0 là số chẵn
  • (i+1) % 2 != 0 là số lẻ
<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
    div {
        padding: 10px;
        margin: 5px;
    }
</style>
    </head>
    <body>
        <script language="javascript">
            function change_backgroud()
            {
                var divs = document.getElementsByTagName("div");
                for (var i = 0; i < divs.length; i++){
                    // Vị trí chẵn => màu đỏ
                    if ((i + 1) % 2 == 0){
                        divs[i].style.background = "red";
                    }
                    else { // Vị trí lẽ => màu xanh
                        divs[i].style.background = "blue";
                    }
                }
            }
        </script>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <div>Thẻ thứ 1</div>
        <button onclick="change_backgroud()">Change background</button>
    </body>
</html>
Trên đây là một số bài tập cơ bản về vòng lặp For trong JavaScript. Hãy thử chạy những đoạn code trên, và tận hưởng kết quả nhé. Hoặc bạn có thể tự sáng tạo ra những đoạn code mới tối ưu hơn.
Ngày:06/11/2020 Chia sẻ bởi:Nhi

CÓ THỂ BẠN QUAN TÂM