Giải thích n là dạng tổng 2 số nguyên tố khác nhau

Em có đoạn code hoàn chỉnh của bài này, nó chạy đúng nhưng em đang thắc mắc vì sao đề bài không nhắc gì đến mảng nhưng tại sao trong đoạn code lại có nhập mảng, ai đó có thể giải thích giúp em từ đoạn nhap mảng trở đi được không ạ

#include<iostream>
#include<math.h>
using namespace std;
bool ktsnt(int n)
{
    if (n < 2)    
        return false;

    for (int i = 2; i <= sqrt(n); i++)
    {
        if (n%i==0)
            return false;
    }
    return true;
}
int nhapmang(int a[],int n)
{
    int b=0;
    for(int i=2;i<n;i++)
    {
      if(ktsnt(i))
      {
         a[b++]=i;
      }
    }
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            if(a[i]+a[j]==n)
            {
               if(a[i]==a[j]) return 0;
            }
        }
        
    }
    return 1;
    
}
int main()
{
    int a[100],n;
    cin>>n;
    cout<<nhapmang(a,n);
}

đó chỉ là cái tên của hàm người ta đặt, người ta muốn đặt là gì chả được

tại sao bạn không nghĩ là tự mình tìm hiểu và giải thích, lại phải nhờ ai đó?
đoạn code đó, có lệnh nào lạ không? có lệnh nào bạn không biết hay không?
vì sao bạn không hỏi tác giả hay người đã share cho bạn
nếu bạn đọc nhiểu được những lệnh trong đoạn code, thì sao bạn không lấy một tờ giấy nháp ra, tính giống như code và xem người viết code muốn gì?

việc bạn nhờ ai đó giải thích code của người khác, cũng giống như là phân tích tác phẩm văn học vậy đó, hên thì nói đúng ý tác giả, xui thì cũng chỉ là chém gió, vẽ vời, nhét chữ vào đầu ông tác giả

3 Likes

đoạn code bạn copy từ đâu mình không biết, nhưng do ng viết không tuân thủ coding convention nên dễ gây hiểu lầm thật, bạn ko biết có phải newbie ko, tưởng nhapmang() là nhập mảng thật thì phải (xl nếu mình nói sai), đáng ra nó nên đc đặt tên là isNumberSumOfTwoPrime(). Anyway, đoạn code kia đã giải quyết đc bài toán rồi, không biết bạn đã hiểu cách nó giải quyết chưa (có thể là thuật toán vẫn chưa đc tối ưu). Nếu bạn chưa hiểu về mảng hoặc không biết mảng là gì, tại sao không Google và tìm hiểu về nó?

2 Likes

Vẫn chưa. Với p<n/2 thì kiểm tra p trước rồi mới kiểm tra n-p là số nguyên tố. Không cần mảng.

Chạy sàng hay hơn nhưng mà phải ngắt đoạn.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?