কম্পিউটার

ইউক্লিডের অ্যালগরিদম বাস্তবায়নের জন্য সি প্রোগ্রাম


সমস্যা

দুটি পূর্ণসংখ্যার সর্বশ্রেষ্ঠ সাধারণ ভাজক (GCD) এবং সর্বনিম্ন সাধারণ মাল্টিপল (LCM) খুঁজে বের করতে এবং প্রদত্ত পূর্ণসংখ্যার সাথে ফলাফল আউটপুট করতে ইউক্লিডের অ্যালগরিদম প্রয়োগ করুন।

সমাধান

দুটি পূর্ণসংখ্যার সর্বশ্রেষ্ঠ সাধারণ ভাজক (GCD) এবং সর্বনিম্ন সাধারণ মাল্টিপল (LCM) খুঁজে বের করার জন্য ইউক্লিডের অ্যালগরিদম বাস্তবায়নের সমাধান হল-

GCD এবং LCM খুঁজে বের করার জন্য ব্যবহৃত লজিক নিম্নরূপ -

if(firstno*secondno!=0){
   gcd=gcd_rec(firstno,secondno);
   printf("\nThe GCD of %d and %d is %d\n",firstno,secondno,gcd);
   printf("\nThe LCM of %d and %d is %d\n",firstno,secondno,(firstno*secondno)/gcd);
}

বলা ফাংশন নিম্নরূপ -

int gcd_rec(int x, int y){
   if (y == 0)
      return x;
   return gcd_rec(y, x % y);
}

প্রোগ্রাম

দুটি পূর্ণসংখ্যার সর্বশ্রেষ্ঠ সাধারণ ভাজক (GCD) এবং সর্বনিম্ন সাধারণ মাল্টিপল (LCM) খুঁজে পেতে ইউক্লিডের অ্যালগরিদম প্রয়োগ করার জন্য C প্রোগ্রামটি নিচে দেওয়া হল

#include<stdio.h>
int gcd_rec(int,int);
void main(){
   int firstno,secondno,gcd;
   printf("Enter the two no.s to find GCD and LCM:");
   scanf("%d%d",&firstno,&secondno);
   if(firstno*secondno!=0){
      gcd=gcd_rec(firstno,secondno);
      printf("\nThe GCD of %d and %d is %d\n",firstno,secondno,gcd);
      printf("\nThe LCM of %d and %d is %d\n",firstno,secondno,(firstno*secondno)/gcd);
   }
   else
      printf("One of the entered no. is zero:Quitting\n");
   }
   /*Function for Euclid's Procedure*/
   int gcd_rec(int x, int y){
   if (y == 0)
      return x;
   return gcd_rec(y, x % y);
}

আউটপুট

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

Enter the two no.s to find GCD and LCM:4 8

The GCD of 4 and 8 is 4

The LCM of 4 and 8 is 8

  1. সিলেকশন সর্ট বাস্তবায়নের জন্য সি++ প্রোগ্রাম

  2. হিপ সাজানোর জন্য C++ প্রোগ্রাম

  3. বুদবুদ সাজানোর জন্য C++ প্রোগ্রাম

  4. রেডিক্স সাজানোর জন্য C++ প্রোগ্রাম