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

C++ - Kiểm tra một số được nhập từ bàn phím có phải là số nguyên tố không

Viết một chương trình kiểm tra một số được nhập từ bàn phím có phải là số nguyên tố không

test php

Bài giải

-------------------- ######## --------------------

Theo trang Wikipedia: Một số được gọi là số nguyên tố khi nó là số tự nhiên khác 0 mà chỉ có 2 ước đó là 1 và chính nó. Số 1 chỉ có 1 ước, nên số 1 không phải là số nguyên tố. Vậy số nguyên tố nhỏ nhất là số 2.

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.

Cách giải bài toán trên như sau:

  • Nhập số từ bàn phím, ta gọi biến đó là so
  • Khai báo và khởi tạo biến kt = 1, biến kt là cờ, đánh dấu so có phải là số nguyên tố hay không, nếu kt = 0 thì so không phải là số nguyên tố, nếu kt = 1 thì so là số nguyên tố
  • Sử dụng vòng lặp while lặp từ 2 đến so/2, cấu trúc vòng lặp while có dạng while (i <= so/2)
  • Trong mỗi vòng lặp thứ i kiểm tra so có chia hết cho i không, nếu If(so % i == 0) thì gán biến kt bằng 0
  • Ra khỏi vòng lặp kiểm tra nếu biến kt bằng 1 thì so là số nguyên tố, ngược lại so không phải là số nguyên tố

Chúng sẽ giải bài toán trên bằng cách sử dụng vòng lặp while trong C++ như sau:

#include <cmath>
#include <iostream>
using namespace std;

int main() {
    int i = 2, so, kt = 1;

    cout << "Nhap so: ";
    cin >> so;

    if (so != 0 && so != 1) {
        while(i <= so/2) {
            if(so%i == 0) {
                kt = 0;
                break;
            }
            i++;
        }
    } else {
       kt = 0;
    }
    
    if(kt == 1) {
        cout << so << " la so nguyen to" << endl;
    } else {
        cout << so << " khong phai la so nguyen to" << endl;
    }

    return 0;
}

Và kết quả sau khi thực thi chương trình trên như sau:

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

Khi nhập số là 0:

ex while 1 JPG

Khi nhập số là 1:

ex while 2 JPG

Khi nhập số là 6:

ex while 3 JPG

Khi nhập số là 7:

ex while 4 JPG

Bài tập vòng lặp while C++

Cùng chuyên mục:

Các hàm xử lý số thực (float.h) trong C/C++

Các hàm xử lý số thực (float.h) trong C/C++

Các hàm xử lý số nguyên lớn (bigint.h) trong C/C++

Các hàm xử lý số nguyên lớn (bigint.h) trong C/C++

Các hàm xử lý thời gian (time.h) trong C

Các hàm xử lý thời gian (time.h) trong C

Các hàm xử lý chuỗi (string.h) trong C/C++

Các hàm xử lý chuỗi (string.h) trong C/C++

Thread Pools và Parallel Algorithms trong C++

Thread Pools và Parallel Algorithms trong C++

Tạo và quản lý các Multithreading trong C++

Tạo và quản lý các Multithreading trong C++

Xử lý ngoại lệ khi làm việc với Memory Allocation trong C++

Xử lý ngoại lệ khi làm việc với Memory Allocation trong C++

Try, Catch, và Throw của Exception Handling trong C++

Try, Catch, và Throw của Exception Handling trong C++

Cách sử dụng Lambda Expressions trong C++

Cách sử dụng Lambda Expressions trong C++

Sử dụng weak_ptr trong C++

Sử dụng weak_ptr trong C++

Sử dụng shared_ptr trong C++

Sử dụng shared_ptr trong C++

Sử dụng unique_ptr trong C++

Sử dụng unique_ptr trong C++

Tổng quan về Smart Pointers trong C++

Tổng quan về Smart Pointers trong C++

Sử dụng Iterators trong STL của C++

Sử dụng Iterators trong STL của C++

[Iterator] Sử dụng Vector trong C++

[Iterator] Sử dụng Vector trong C++

[Iterator] Sử dụng trong List trong C++

[Iterator] Sử dụng trong List trong C++

[STL] Sử dụng Vector trong C++

[STL] Sử dụng Vector trong C++

Tổng quan về Iterators trong C++

Tổng quan về Iterators trong C++

[STL] Các hàm thường dùng của lớp Vector trong C++

[STL] Các hàm thường dùng của lớp Vector trong C++

[STL] Các hàm thông dụng của Map trong C++

[STL] Các hàm thông dụng của Map trong C++

Top