কম্পিউটার

একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল নির্ণয়ের জন্য সি প্রোগ্রাম?


এই বিভাগে, আমরা দেখব কিভাবে আমরা একটি সংখ্যার সমস্ত বিজোড় মৌলিক গুণনীয়কগুলির যোগফল একটি কার্যকর উপায়ে পেতে পারি। n =1092 বলে একটি সংখ্যা আছে, আমাদের এটির সমস্ত গুণনীয়ক পেতে হবে। 1092-এর মৌলিক গুণনীয়কগুলি হল 2, 2, 3, 7, 13৷ সমস্ত বিজোড় গুণনীয়কের যোগফল হল 3+7+13 =23৷ এই সমস্যাটি সমাধান করার জন্য, আমাদের এই নিয়মটি অনুসরণ করতে হবে −

  • যখন সংখ্যাটি 2 দ্বারা বিভাজ্য হয়, তখন সেই গুণকটিকে উপেক্ষা করুন এবং সংখ্যাটিকে বারবার 2 দ্বারা ভাগ করুন৷

  • এখন সংখ্যাটি বিজোড় হতে হবে। এখন সংখ্যাটির 3 থেকে বর্গমূল পর্যন্ত শুরু করে, সংখ্যাটি যদি বর্তমান মানের দ্বারা বিভাজ্য হয়, তাহলে যোগফলের সাথে গুণনীয়ক যোগ করুন এবং বর্তমান সংখ্যা দিয়ে ভাগ করে সংখ্যা পরিবর্তন করুন তারপর চালিয়ে যান।

  • অবশেষে, অবশিষ্ট সংখ্যাটিও যোগ করা হবে যদি অবশিষ্ট সংখ্যাটি বিজোড় হয়

আসুন আরও ভাল ধারণা পেতে অ্যালগরিদম দেখি।

অ্যালগরিদম

printPrimeFactors(n)

begin
   sum := 0
   while n is divisible by 2, do
      n := n / 2
   done
   for i := 3 to √𝑛, increase i by 2, do
      while n is divisible by i, do
         sum := sum + i
         n := n / i
      done
   done
   if n > 2, then
      if n is odd, then
         sum := sum + n
      end if
   end if
end

উদাহরণ

#include<stdio.h>
#include<math.h>
int sumOddFactors(int n) {
   int i, sum = 0;
   while(n % 2 == 0) {
      n = n/2; //reduce n by dividing this by 2
   }
   //as the number is not divisible by 2 anymore, all factors are odd
   for(i = 3; i <= sqrt(n); i=i+2){ //i will increase by 2, to get
      only odd numbers
      while(n % i == 0) {
         sum += i;
         n = n/i;
      }
   }
   if(n > 2) {
      if(n%2 == 1)
         sum += n;
   }
   return sum;
}
main() {
   int n;
   printf("Enter a number: ");
   scanf("%d", &n);
   printf("Sum of all odd prime factors: %d", sumOddFactors(n));
}

আউটপুট

Enter a number: 1092
Sum of all odd prime factors: 23

  1. পাইথন প্রোগ্রামে একটি সংখ্যার জোড় গুণনীয়কের সমষ্টি খুঁজুন

  2. একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  3. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  4. সংখ্যার ন্যূনতম যোগফল নির্ণয়ের জন্য পাইথন প্রোগ্রাম