STARTING
CONTROL STATEMENT
FUNCTION
ARRAY & POINTER
OOP
STL
ITERATORS
OTHER FEATURES
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT
Thông báo trang web đã đổi chủ: Chúng tôi sẽ sàn lọc nội dung, loại bỏ các bài viết vi phạm.

Bài tập vòng lặp for trong C++ có lời giải

Trong bài này mình sẽ tổng hợp các bài tập vòng lặp for trong C++ để giúp các bạn rèn luyện xử lý vòng lặp for, đây là những bài tập có lời giải do mình biên soạn và có tham khảo trên internet.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Vòng lặp for C++ rất quan trọng, nó được sử dụng rất nhiều khi xử lý mảng, vì vậy bạn phải nắm vững cấu trúc của nó, cũng như phương pháp áp dụng vào bài toán cụ thể.

1. Bài tập vòng lặp for trong C++ thứ nhất

Đầu tiên ta nên làm những bài cực kì đơn giản trước.

Bài 01: Viết chương trình in ra các số từ 1 đến 100.

Bài viết này được đăng tại [free tuts .net]

#include <iostream>
using namespace std;

int main()
{
    for (int i = 1; i <= 100; i++){
    	cout << i << endl;
    }
}

Bài 02: Cũng là bài tập trên nhưng tăng độ khó lên một xíu. Hãy in ra các số từ 1, 3, 5, 7, 9 ... 99 bằng vòng lặp for.

Với bài này thì ta chỉ cần lặp từ 1 đến 99 với bước nhảy bằng 2.

#include <iostream>
using namespace std;

int main()
{
	// Chu y buoc nhay i += 2
    for (int i = 1; i <= 99; i+= 2){
    	cout << i << endl;
    }
}

Hoặc bạn sử dụng bước nhảy 1, nhưng trong thân vòng lặp bạn phải tăng i lên 1 nữa nhé.

#include <iostream>
using namespace std;

int main()
{
    for (int i = 1; i <= 99; i++){
    	cout << i << endl;
    	i++; // Tang i len 1
    }
}

2. Bài tập vòng lặp for C++ thứ hai

Bài 01: Viết chương trình kiểm tra một số có phải là số nguyên tố hay không?

Chúng ta đã làm bài này khá nhiều rồi, nhưng hôm nay mình cũng viết lại với một cách giải khác.

Số nguyên tố là số lớn hơn 1 và chỉ chia hết cho 1 và chính nó. Số 2 là SNT chẵn duy nhất.

#include <iostream>
using namespace std;

int main()
{
    int n;
    bool flag = true; // Bien dung check SNT 

    cout << "Nhap so can kiem tra: ";
    cin >> n;

    // Neu n < 2 thi khong phai la SNT
    if (n < 2){
        flag = false;
    }
    // Neu n = 2 thi do la SNT
    else if (n == 2){
        flag = true;
    }
    // Neu n la so chan thi khong phai la SNT
    else if (n % 2 == 0){
        flag = false;
    }
    else{
        // Lap qua cac so 3, 5, 7 ... (n - 1)
        // Neu n chia het cho bat ki so nao thi 
        // do khong phai la SNT
        for (int i = 3; i < n; i += 2){
            if (n % i == 0){
                flag = false;
                break;
            }
        }
    }

    if (flag){
        cout << n << " la SNT" << endl;
    }
    else {
        cout << n << " khong phai la SNT" << endl;
    }
}

Bài 02: Áp dụng thuật toán trên hãy viết ứng dụng in ra các số nguyên tố nằm trong khoảng từ 1 đến 100.

Bài này khá đơn giản, ta chỉ cần đặt đoạn code trên nằm trong vòng lặp for là được. Lúc này số cần kiểm tra chính là số trong mỗi lần lặp.

#include <iostream>
using namespace std;

int main()
{
    // Bien dung check SNT
    bool flag;  

    for (int i = 1; i <= 100; i++){

        // Khoi tao gia tri ban dau cho flag
        flag = true;

        // Neu i < 2 thi khong phai la SNT
        if (i < 2){
            flag = false;
        }
        // Neu n = 2 thi do la SNT
        else if (i == 2){
            flag = true;
        }
        // Neu n la so chan thi khong phai la SNT
        else if (i % 2 == 0){
            flag = false;
        }
        else{
            // Lap qua cac so 3, 5, 7 ... (n - 1)
            // Neu n chia het cho bat ki so nao thi 
            // do khong phai la SNT
            for (int j = 3; j < i; j += 2){
                if (i % j == 0){
                    flag = false;
                    break;
                }
            }
        }

        // neu la SNT thi in ra
        if (flag){
            cout << i << endl;
        }
    }
}

3. Bài tập vòng lặp for trong C++ thứ ba

Đề bài: Hãy viết chương trình tính giai thừa cho một số bất kì.

Để tính giai thừa cho một số n thì ta sử dụng vòng lặp để lặp từ 1 đến n, sau đó kết quả là tích của các số đó.

#include <iostream>
using namespace std;

int main()
{
    int n;
    cout << "Nhap so can tinh giai thua: ";
    cin >> n;
    
    int giaithua = -1;
    
    if (n < 0){
    	cout << "Vui long nhap vao so duong";
    }
    else if (n == 0){
    	giaithua = 1;
    }
    else {
    	for (int i = 1; i <= n; i++){
            giaithua *= i;
	}
    }
    
    if (giaithua != -1){
    	cout << n <<"! = " << giaithua <<endl;
    }
}

4. Bài tập vòng lặp for C++ thứ tư

Trong bài tập này chúng ta sẽ thao tác một chút với mảng nhé.

Đề bài: Hãy viết chương trình cho phép người dùng nhập vào một dãy số gồm 10 chữ số.

Bài này thì ta phải khai báo một mảng gồm 10 phần tử kiểu số nguyên, sau đó dùng vòng lặp để yêu cầu người dùng nhập vào.

#include <iostream>
using namespace std;

int main()
{
    int numbers[10];

    // Nhap du lieu
    for (int i = 0; i < 10; i++){
        cout << "Nhap phan thu thu " << i <<": ";
        cin >> numbers[i];
    }

    // In danh sach ra
    for (int i = 0; i < 10; i++){
        cout  << numbers[i] << ",";
    }
}

Lời kết: Trên là tổng hợp những bài tập vòng lặp for trong C++ đơn giản nhất. Nếu bạn muốn làm nhiều bài tập hơn thì hãy tiếp tục học những bài tiếp theo trong series này nhé, bởi trong bài xử lý mảng chúng ta sẽ sử dụng vòng lặp for rất nhiều.

Cùng chuyên mục:

Cách điều khiển Touch Sensor trong Arduino

Cách điều khiển Touch Sensor trong Arduino

Cách giao tiếp Keypad với màn hình LCD trong Arduino

Cách giao tiếp Keypad với màn hình LCD trong Arduino

Cách điều khiển Keypad trong Arduino

Cách điều khiển Keypad trong Arduino

Cách điều khiển màn hình LCD trong Arduino

Cách điều khiển màn hình LCD trong Arduino

Hướng dẫn điều khiển cảm biến ánh sáng trong Arduino

Hướng dẫn điều khiển cảm biến ánh sáng trong Arduino

Cách điều khiển công tắc (switch) trong Arduino

Cách điều khiển công tắc (switch) trong Arduino

Cách điều khiển button trong Arduino

Cách điều khiển button trong Arduino

Hướng dẫn điều khiển đèn LEG bằng Touch Sensor

Hướng dẫn điều khiển đèn LEG bằng Touch Sensor

Hướng dẫn điều khiển đèn LEG bằng nút nhấn trong Arduino

Hướng dẫn điều khiển đèn LEG bằng nút nhấn trong Arduino

Hướng dẫn điều khiển đèn LEG RGB trong Arduino

Hướng dẫn điều khiển đèn LEG RGB trong Arduino

Hướng dẫn bật tắt đèn LED trong Arduino

Hướng dẫn bật tắt đèn LED trong Arduino

Viết chương trình Arduino đầu tiên

Viết chương trình Arduino đầu tiên

Các kiến thức cần biết trước khi học lập trình với Arduino

Các kiến thức cần biết trước khi học lập trình với Arduino

Hướng dẫn cài đặt và sử dụng Arduino IDE

Hướng dẫn cài đặt và sử dụng Arduino IDE

Arduino là gì? Ứng dụng của Arduino trong cuộc sống

Arduino là gì? Ứng dụng của Arduino trong cuộc sống

Cách nhân hai số trong ngôn ngữ C

Cách nhân hai số trong ngôn ngữ C

Cách cộng hai số nguyên trong C

Cách cộng hai số nguyên trong C

Tổng hợp hơn 1000 bài tập C / C++ có lời giải

Tổng hợp hơn 1000 bài tập C / C++ có lời giải

Bài này sẽ tổng hợp hơn 1000 bài tập C / C++ có lời giải…

Các hàm trong thư viện ctime C / C++

Các hàm trong thư viện ctime C / C++

Các hàm trong thư viện cstdio C / C++

Các hàm trong thư viện cstdio C / C++

Top