কম্পিউটার

দুটি মৌলিক সংখ্যার যোগফল হিসাবে প্রকাশ করার জন্য একটি সংখ্যার জন্য C প্রোগ্রাম।


সমস্যা

একটি প্রদত্ত সংখ্যা দুটি মৌলিক সংখ্যার যোগফল হিসাবে প্রকাশ করা যায় কিনা তা খুঁজে বের করুন।

একটি ধনাত্মক পূর্ণসংখ্যা N দেওয়া হলে, N সংখ্যাটিকে দুটি মৌলিক সংখ্যার যোগফল হিসাবে উপস্থাপন করা যায় কিনা তা পরীক্ষা করতে হবে।

সমাধান

নিচে দেওয়া একটি উদাহরণ বিবেচনা করুন -

20 কে দুটি মৌলিক সংখ্যা 3 এবং 17, 13 এবং 7 এর যোগফল হিসাবে প্রকাশ করা যেতে পারে।

20=3+7

20=13+7

অ্যালগরিদম

দুটি মৌলিক সংখ্যার যোগফল হিসাবে একটি প্রদত্ত সংখ্যা প্রকাশ করার জন্য নীচে দেওয়া একটি অ্যালগরিদম দেখুন৷

ধাপ 1 - রান টাইমে চেক করা নম্বরটি ইনপুট করুন।

ধাপ 2 − i =2 থেকে (num/2) পর্যন্ত পুনরাবৃত্তি করুন।

ধাপ 3 - চেক করুন i একটি মৌলিক সংখ্যা।

ধাপ 4 − যদি আমি মৌলিক হয়, পরীক্ষা করুন (n - i) একটি মৌলিক সংখ্যা।

ধাপ 5 − যদি (i) এবং (n - i) উভয়ই প্রাইম হয়, তাহলে, প্রদত্ত সংখ্যাটিকে i এবং (n - i) এর সমষ্টি হিসাবে উপস্থাপন করা যেতে পারে।

উদাহরণ

একটি প্রদত্ত সংখ্যাকে দুটি মৌলিক সংখ্যার যোগফল −

হিসাবে প্রকাশ করার জন্য C প্রোগ্রামটি নিচে দেওয়া হল
#include <stdio.h>
int Sum(int n);
int main(){
   int num, i;
   printf("Enter number: ");
   scanf("%d", &num);
   int flag = 0;
   for(i = 2; i <= num/2; ++i){
      if (sum(i) == 1){
         if (sum(num-i) == 1){
            printf("\nThe given %d can be expressed as the sum of %d and %d\n\n", num, i, num - i);
            flag = 1;
         }
      }
   }
   if (flag == 0)
   printf("The given %d cannot be expressed as the sum of two prime numbers\n", num);
   return 0;
}
//check if a number is prime or not
int sum(int n){
   int i, isPrime = 1;
   for(i = 2; i <= n/2; ++i){
      if(n % i == 0){
         isPrime = 0;
         break;
      }
   }
   return isPrime;
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত আউটপুট তৈরি করে −

Run 1:
Enter number: 34
The given 34 can be expressed as the sum of 3 and 31
The given 34 can be expressed as the sum of 5 and 29
The given 34 can be expressed as the sum of 11 and 23
The given 34 can be expressed as the sum of 17 and 17
Run 2:
Enter number: 11
The given 11 cannot be expressed as the sum of two prime numbers

  1. প্রথম n প্রাকৃতিক সংখ্যার ঘনক্ষেত্রের যোগফলের জন্য C প্রোগ্রাম?

  2. একটি সংখ্যা দুটি প্রাইম নম্বরের যোগফল হিসাবে প্রকাশ করা যায় কিনা তা পরীক্ষা করার জন্য জাভা প্রোগ্রাম

  3. পাইথনে একটি মৌলিক সংখ্যা দুটি মৌলিক সংখ্যার যোগফল হিসাবে প্রকাশ করা যায় কিনা তা পরীক্ষা করুন

  4. একটি প্রদত্ত সংখ্যার সমস্ত প্রাইম ফ্যাক্টর প্রিন্ট করার জন্য দক্ষ প্রোগ্রামের জন্য পাইথন প্রোগ্রাম