LATEST

Bài tập vòng lặp for trong C / C++

Trong bài viết này, codehow sẽ thực hiện các bài tập vòng lặp for trong C / C++. Sau khi chúng ta đã học phần lý thuyết, để có thể nhớ được lâu thì việc tốt nhất là làm các bài tập liên quan đến kiến thức đó.

Mình sẽ thực hiện các bài tập có sử dụng vòng lặp for trong C / C++ với hai ngôn ngữ khác nhau là C và C++. Các bạn cùng mình bắt đầu thôi nhé !!!

Bài tập 1 vòng lặp for trong C++

Đề bài: Viết chương trình yêu cầu người dùng nhập vào một số, sử dụng vòng lặp for trong C / C++ để in ra các số lẻ từ 1 đến số đó. Điều kiện nhập n phải lớn hơn 2.

Gợi ý:

  • Khai báo biến a và yêu cầu người dùng nhập vào số này.
  • Sử dụng vòng lặp for lặp từ 1 đến a với bước nhảy là i += 2 (bước nhảy hai đơn vị). Vì bắt đầu từ số 1 (là số lẻ) vậy nên cứ cộng thêm 2 ta được thêm một số lẻ.
  • Hiển thị các số lẻ đó ra màn hình cho người dùng.

Chương trình C:

#include <stdio.h>

int main(void) {
  int n;
  do{
    printf("Vui lòng nhập số lớn hơn 2: ");
    scanf("%d", &n);
  }while(n < 2);
  printf("Các số lẽ từ 1 đến %d là: ",n);
  for(int i = 1; i <= n; i += 2){
    printf("%d ",i);
  }

  printf("\n------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Kết quả:

bai18 02 png

Chương trình C++:

#include <iostream>
using namespace std;
int main() {
  int n;
  do{
    cout<<"Vui lòng nhập số lớn hơn 2: ";
    cin>>n;
  }while(n < 2);
  cout<<"Các số lẽ từ 1 đến "<<n<<" là: ";
  for(int i = 1; i <= n; i += 2){
    cout<<i<<" ";
  }

  cout<<"\n------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai18 01 png

Bài tập 2 vòng lặp for trong C++

Đề bài: Viết chương trình in ra bảng cửu chương, sử dụng vòng lặp for trong C / C++ để yêu cầu người dùng nhập vào bảng cửu chương cần in. Điều kiện bảng cửu chương là một số dương (1, 2, 3, ...), nếu là số âm thì yêu cầu nhập lại.

Gợi ý:

  • Khai báo biến n và yêu cầu người dùng nhập vào một số. Sử dụng vòng lặp do...while để tạo điều kiện nhập số n lớn hơn 0, nếu bé hơn hoặc bằng 0 thì yêu cầu nhập lại.
  • Sử dụng vòng lặp for lặp từ 1 đến 9, với mỗi lần lặp như vậy ta thực hiện một phép tính của bảng cửu chương.
  • Hiển thị bảng cửu chương ra màn hình.

Chương trình C:

#include <stdio.h>

int main(void) {
  int n;
  do{
    printf("Vui lòng nhập bảng cửu chương lớn hơn 0: ");
    scanf("%d", &n);
  }while(n <= 0);
  printf("Bảng cửu chương %d: \n",n);
  for(int i = 1; i <= 9; i++){
    printf("%d x %d = %d\n", n, i, n * i);
  }

  printf("\n------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Kết quả:

bai18 03 png

Chương trình C++:

#include <iostream>
using namespace std;
int main() {
  int n;
  do{
    cout<<"Vui lòng nhập bảng cửu chương lớn hơn 0: ";
    cin>>n;
  }while(n <= 0);
  cout<<"Bảng cửu chương "<<n<<": "<<endl;
  for(int i = 1; i <= 9; i++){
    cout<< n <<" x "<< i <<" = " << n * i<<endl;
  }

  cout<<"\n------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai18 04 png

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

Đề bài: Viết chương trình yêu cầu người dùng nhập vào một số. Sử dụng vòng lặp for trong C / C++ để kiểm tra và in ra các số nguyên tố trong dãy từ 1 đến số đó. Điều kiện số được nhập phải lớn hơn 2, nếu không sẽ yêu cầu nhập lại.

Gợi ý:

  • Yêu cầu người dùng nhập vào một số n, sử dụng vòng lặp do...while để tạo điều kiện nhập cho n phải lớn hơn 1.
  • Vòng lặp for thứ nhất lặp từ i = 1 đến n.
    • Nếu i < 2 thì không phải số nguyên tố.
    • Nếu i = 2 thì đây là số nguyên tố.
    • Nếu i chia hết cho hai thì không phải số nguyên tố.
    • Sử dụng vòng lặp for lặp từ 3 đến n - 1, nếu i chia hết cho số nào thì đó không phải là số nguyên tố.
  • Hiển thị các số nguyên tố ra màn hình.

Chương trình C:

#include <stdio.h>
#include <stdbool.h>
int main(void) {
  int n;
  bool flag; 
  do{
    printf("Nhập vào một số n lớn hơn 2: ");
    scanf("%d", &n);
  }while(n <= 2);
  printf("Các số nguyên tố từ 1 đến %d là: \n", n);
  for (int i = 1; i <= n; i++){
    //KHởi tạo giá trị ban đầu cho biến flag
    flag = true;
    // Nêu i < 2 thì không phải là số nguyên tố
    if (i < 2){
      flag = false;
    }
    // Nếu i = 2 thì đó là số nguyên tố
    else if (i == 2){
      flag = true;
    }
    // Nếu i chia hết cho 2 thì không phải số nguyên tố
    else if (i % 2 == 0){
       flag = false;
    }
    else{
      //Lặp các số từ 3 đến n - 1, nếu i chia hết cho số nào thì không phải số nguyên tố
      for (int j = 3; j < i; j += 2){
        if (i % j == 0){
          flag = false;
          break;
        }
      }
    }
    //In số nguyên tố ra màn hình
    if (flag){
      printf("%d\n",i);
    }
  }

  printf("\n------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Kết quả:

bai18 06 png

Chương trình C++:

#include <iostream>
using namespace std;
int main() {
  int n;
  bool flag; 
  do{
    cout<<"Nhập vào một số n lớn hơn 2: ";
    cin>>n;
  }while(n <= 2);
  cout<<"Các số nguyên tố từ 1 đến "<<n<<" là: "<<endl;
  for (int i = 1; i <= n; i++){
    //KHởi tạo giá trị ban đầu cho biến flag
    flag = true;
    // Nêu i < 2 thì không phải là số nguyên tố
    if (i < 2){
      flag = false;
    }
    // Nếu i = 2 thì đó là số nguyên tố
    else if (i == 2){
      flag = true;
    }
    // Nếu i chia hết cho 2 thì không phải số nguyên tố
    else if (i % 2 == 0){
       flag = false;
    }
    else{
      //Lặp các số từ 3 đến n - 1, nếu i chia hết cho số nào thì không phải số nguyên tố
      for (int j = 3; j < i; j += 2){
        if (i % j == 0){
          flag = false;
          break;
        }
      }
    }
    //In số nguyên tố ra màn hình
    if (flag){
      cout << i << endl;
    }
  }
  cout<<"\n------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai18 05 png

Bài tập 4 vòng lặp for trong C++

Đề bài: Viết chương trình in ra tam giác vuông bằng các dấu *, chiều cao của tam giác do người dùng nhập vào, chiều cao này phải lớn hơn 2, nếu không sẽ yêu cầu nhập lại.

Gợi ý:

Chương trình C:

#include <stdio.h>
#include <stdbool.h>
int main(void) {
  int h;
  do{
    printf("Nhập vào chiều cao tam giác: ");
    scanf("%d", &h);
  }while(h <= 1);
  
  for(int i = 1; i <= h; i++) {
    //in ký tự *
    for(int j = 1; j <= i; j++) {
      printf("* ");
    }
    //Xuống dòng tiếp theo
    printf("\n");
  }

  printf("\n------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Kết quả:

bai18 08 png

Chương trình C++:

#include <iostream>
using namespace std;
int main() {
  int h;
  do{
    cout << "Nhập vào chiều cao tam giác: ";
    cin >> h;
  }while(h <= 1);
  
  for(int i = 1; i <= h; i++) {
    //in ký tự *
    for(int j = 1; j <= i; j++) {
      cout << "* ";
    }
    //Xuống dòng tiếp theo
    cout << endl;
  }
  
  cout<<"\n------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai18 07 png

Cùng chuyên mục:

Danh sách liên kết (Linked List) là gì? Các loại danh sách liên kết

Danh sách liên kết (Linked List) là gì? Các loại danh sách liên kết

Sử dụng đệ quy để giải bài toán tháp Hà Nội

Sử dụng đệ quy để giải bài toán tháp Hà Nội

Đệ quy tương hỗ (Mutual Recursion) trong C / C++

Đệ quy tương hỗ (Mutual Recursion) trong C / C++

Đệ quy lồng (Nested Recursion) trong C / C++

Đệ quy lồng (Nested Recursion) trong C / C++

Đệ quy đa tuyến (Exponential Recursion) trong C / C++

Đệ quy đa tuyến (Exponential Recursion) trong C / C++

Đệ quy nhị phân (Binary Recursion) trong C / C++

Đệ quy nhị phân (Binary Recursion) trong C / C++

Đệ quy đuôi (Tail Recursion) trong C / C++

Đệ quy đuôi (Tail Recursion) trong C / C++

Đệ quy tuyến tính (Linear Recursion) trong C / C++

Đệ quy tuyến tính (Linear Recursion) trong C / C++

Hàm đệ quy là gì? Các loại hàm đệ quy trong C / C++

Hàm đệ quy là gì? Các loại hàm đệ quy trong C / C++

Thuật toán sắp xếp Quick Sort trong C / C++

Thuật toán sắp xếp Quick Sort trong C / C++

Thuật toán sắp xếp trộn (Merge Sort) trong C / C++

Thuật toán sắp xếp trộn (Merge Sort) trong C / C++

Thuật toán sắp xếp chọn (Selection Sort) trong C / C++

Thuật toán sắp xếp chọn (Selection Sort) trong C / C++

Thuật toán sắp xếp chèn (Insertion Sort) trong C / C++

Thuật toán sắp xếp chèn (Insertion Sort) trong C / C++

Thuật toán sắp xếp nổi bọt (Bubble Sort) trong C / C++

Thuật toán sắp xếp nổi bọt (Bubble Sort) trong C / C++

Thuật toán tìm kiếm nội suy (Interpolation Search) trong C / C++

Thuật toán tìm kiếm nội suy (Interpolation Search) trong C / C++

Thuật toán tìm kiếm nhị phần (Binary Search) trong C / C++

Thuật toán tìm kiếm nhị phần (Binary Search) trong C / C++

Thuật toán tìm kiếm tuyến tính (Linear Search) trong C / C++

Thuật toán tìm kiếm tuyến tính (Linear Search) trong C / C++

Thuật toán kiểm tra năm nhuận trong C / C++

Thuật toán kiểm tra năm nhuận trong C / C++

Thuật toán kiểm tra số chẵn lẻ trong C / C++

Thuật toán kiểm tra số chẵn lẻ trong C / C++

Thuật toán tính lũy thừa trong C / C++

Thuật toán tính lũy thừa trong C / C++

Top