Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 6 trên tổng số 6 kết quả

Đề tài: Các số sinh đôi là các số nguyên tố mà khoảng cách giữa chúng là 2. Hãy in tất cả cặp số sinh đôi < 1000.

  1. #1
    Ngày gia nhập
    01 2013
    Bài viết
    8

    Mặc định Các số sinh đôi là các số nguyên tố mà khoảng cách giữa chúng là 2. Hãy in tất cả cặp số sinh đôi < 1000.

    Tình hình là em mới kiểm tra được số n có phải là số nguyên tố hay không thôi, mọi người giúp đỡ làm bài trên với.
    ---------------------
    #include<iostream>
    #include<math.h>
    using namespace std;
    int main()
    {
    int i,n,s=0;
    cout<<"Nhap so n = "<<endl;
    cin>>n;
    s=0;
    for (i=1;i<=n;i++)
    {
    if (n%i==0)
    s=s+1;
    }
    if (s==2)
    cout<<"La so nguyen to"<<endl;
    else
    cout<<"Khong la so nguyen to "<<endl;
    return 0;
    }
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  2. #2
    Ngày gia nhập
    01 2013
    Bài viết
    1,479

    Dùng sàng Era nhóe

  3. #3
    Ngày gia nhập
    01 2013
    Bài viết
    8

    là như thế nào vậy, bạn nói rõ hơn được không?

  4. #4
    Ngày gia nhập
    01 2013
    Bài viết
    1,479

    http://en.wikipedia.org/wiki/Sieve_of_Eratosthenes

  5. #5
    Ngày gia nhập
    09 2019
    Nơi ở
    KTX ĐGQG Tp.HCM
    Bài viết
    0

    Trích dẫn Nguyên bản được gửi bởi huudien1993 Xem bài viết
    là như thế nào vậy, bạn nói rõ hơn được không?
    đầu tiên bạn nhập số n vào, sau đó nếu số đó chia hết cho hai thì tăng biến đếm s lên 1 đơn vị. vì số nguyên tố chỉ chia hết cho 1 và chính nó. nên nếu chạy i bằng 2 (tức là bỏ đi trường hợp chia hết cho 1) thì gặp s>=2 thì tức là n chia hết cho hơn 2 số, suy ra nó không là số nguyên tố, nếu s=1 thì suy ra nó chỉ chia hết cho chính nó. suy ra nó là số nguyên tố

  6. #6
    Ngày gia nhập
    02 2016
    Bài viết
    305

    Mặc định Các số sinh đôi là các số nguyên tố mà khoảng cách giữa chúng là 2. Hãy in tất cả cặp số sinh đôi < 1000.

    Cái từ chọn "sinh đôi" hơi vô duyên.
    Theo định nghĩa trên thì 3 và 5 là cặp sinh đôi, 5 và 7 cũng là cặp sinh đôi, nhưng 3 và 7 thì lại không.
    Như vậy, sinh đôi không có tính truyền.

    for (int i = 3, lst = 0; i1 < 1000; i += 2)
    {
    if (isprime(i))
    {
    if (lst) printf("%d %d", lst, i); // đây là một cặp
    lst = i;
    }
    else lst = 0;
    }
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn