Computer >> Máy Tính >  >> Lập trình >> C ++

Kiểm tra số nguyên cho tổng các chữ số ở các vị trí lẻ của một số trong C ++

Trong bài toán này, chúng ta được cho một số N. nhiệm vụ của chúng ta là kiểm tra xem tổng các chữ số ở vị trí lẻ của số đó có phải là số nguyên tố hay không.

Kiểm tra tính nguyên bản là thuật toán được sử dụng để kiểm tra xem số đã cho có phải là số nguyên tố hay không.

Hãy lấy một ví dụ để hiểu vấn đề,

 Input:3425 

Để giải quyết vấn đề này, một cách tiếp cận dễ dàng sẽ là cộng tất cả các chữ số ở vị trí lẻ trong số và sau đó kiểm tra xem tổng này có phải là số nguyên tố hay không.

Chương trình cho thấy việc triển khai giải pháp của chúng tôi

Ví dụ

 #include  using namespace std; int retailSum (int n) {int sum =0, pos =1; while (n) {if (pos% 2 ==1) sum + =n% 10; n =n / 10; pos ++; } return sum;} bool isPrimeNumber (int n) {if (n <=1) return false; if (n <=3) return true; if (n% 2 ==0 || n% 3 ==0) return false; for (int i =5; i * i <=n; i =i + 6) if (n% i ==0 || n% (i + 2) ==0) return false; trả về true;} int main () {int n =1734; if (isPrimeNumber (retailSum (n))) cout <<"Tính tổng của chữ số lẻ của một số" < 

Đầu ra

 Tổng của chữ số lẻ của số 1734 là số nguyên tố.