VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • Python
  • PHP
  • Eclipse
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Phần mềm tiện ích
    • Cấu trúc dữ liệu và giải thuật
    • Học lập trình C#
    • Selenium Test
C Cơ Bản String Trong C++ Xử Lý File Trong C++

Bài Tập C++

Danh sách bài tập C++

Bài Tập C++ Kinh Điển

Dãy số Fibonacci trong C++ Check số nguyên tố trong C++ Tính giai thừa trong C++ Chuyển đổi hệ cơ số trong C++

Bài Tập C++ Cơ Bản

Giải phương trình bậc 2 Tìm ước số chung lớn nhất (UCLN) và bội số chung nhỏ nhất (BCNN) Liệt kê tất cả số nguyên tố nhỏ hơn n Liệt kê n số nguyên tố đầu tiên Liệt kê tất cả số nguyên tố có 5 chữ số Phân tích số nguyên Tính tổng của các chữ số của một số nguyên Tìm số thuận nghịch Tìm số Fibonacci nhỏ hơn n là nguyên tố

Bài Tập C++ Nâng Cao

Bài tập quản lý sinh viên trong C/C++

Liệt kê n số nguyên tố đầu tiên trong C++


Liệt kê tất cả các số nguyên tố nhỏ hơn n trong C++
Liệt kê tất cả số nguyên tố có 5 chữ số trong C++

Nội dung chính

  • Đề bài
  • Lời giải

Đề bài

Viết chương trình C++ liệt kê n số nguyên tố đầu tiên.

Định nghĩa: Số nguyên tố là số lớn hơn 1 và chỉ chia hết cho 1 và chính nó.
Ví dụ: 2, 3, 5, 7, 11, 13, 17, … là những số nguyên tố.
Chú ý: Số 0 và 1 không phải là số nguyên tố. Chỉ có số 2 là số nguyên tố chẵn, tất cả các số chẵn khác không phải là số nguyên tố vì chúng chia hết cho 2.



Lời giải


/**
 * Chuong trinh liet ke n so nguyen to dau tien.
 * 
 * @author viettuts.vn
 */
 
#include <iostream>
#include <cmath>

using namespace std;

/**
 * check so nguyen to
 * 
 * @author viettuts.vn
 * @param n: so nguyen duong
 * @return 1: la so nguyen so, 
 *         0: khong la so nguyen to
 */
int isPrimeNumber(int n) {
    // so nguyen n < 2 khong phai la so nguyen to
    if (n < 2) {
        return 0;
    }
    // check so nguyen to khi n >= 2
    int i;
    int squareRoot = sqrt(n);
    for (i = 2; i <= squareRoot; i++) {
        if (n % i == 0) {
            return 0;
        }
    }
    return 1;
}

/**
 * Ham main
 */
int main() {
 int n;
    cout << "Nhap n = ";
    cin >> n;
    printf("%d so nguyen to dau tien la: \n", n);
    int dem = 0; // dem tong so nguyen to
    int i = 2;   // tim so nguyen to bat dau tu so 2
    while (dem < n) {
        if (isPrimeNumber(i)) {
            printf("%d ", i);
            dem++;
        }
        i++;
    }
}

Kết quả:

Nhập n = 10
10 so nguyen to dau tien la: 
2 3 5 7 11 13 17 19 23 29 

Liệt kê tất cả các số nguyên tố nhỏ hơn n trong C++
Liệt kê tất cả số nguyên tố có 5 chữ số trong C++

Recent Updates

Đa luồng trong C++Xử lý ngoại lệ trong C++Nạp chồng toán tử truy cập thành viên lớp (->) trong C++Nạp chồng toán tử subscript [] trong C++Nạp chồng toán tử gọi hàm () trong C++Nạp chồng toán tử gán trong C++Nạp chồng toán tử ++ và -- trong C++Nạp chồng toán tử Input/Output trong C++Nạp chồng toán tử quan hệ trong C++Nạp chồng toán tử nhị phân trong C++Nạp chồng toán tử một ngôi trong C++Nạp chồng toán tử và Nạp chồng hàm trong C++

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn

Danh sách bài học

Học java
Học servlet
Học jsp
Học Hibernate
Học Struts2
Học Spring
Học SQL

Câu hỏi phỏng vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

About VietTuts.Vn

Hệ thống bài học trên VietTuts.Vn bao gồm các bài lý thuyết và thực hành về các công nghệ java và công nghệ web. Các bài lý thuyết trên hệ thống VietTuts.Vn được tham khảo và tổng hợp từ các trang http://javatpoint.com, http://www.tutorialspoint.com, http://docs.oracle.com/en …

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | VietTuts.Vn team | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml