দুটি পূর্ণসংখ্যা Num1 ও Num2 দেওয়া থাকলে, ভগ্নাংশ Num1/Num2-কে ন্যূনতম রূপে আনা হবে।
GCD ব্যবহার করে ন্যূনতম হর বের করা
দুটি সংখ্যার महत्तম সাধারণ ভাজক (GCD) বের করুন।
দুটি সংখ্যাকে GCD দিয়ে ভাগ করুন।
ফলাফল ন্যূনতম ভগ্নাংশ হবে।
উদাহরণ
ইনপুট − Num1 = 22, Num2 = 10
আউটপুট − Num1 = 11, Num2 = 5, Lowest Fraction: 11/5
ব্যাখ্যা − GCD(22,10) = 2। 22/2=11, 10/2=5।
ইনপুট − Num1 = 36, Num2 = 40
আউটপুট − Num1 = 9, Num2 = 10, Lowest Fraction: 9/10
ব্যাখ্যা − GCD(36,40) = 4। 36/4=9, 40/4=10।
প্রোগ্রামে ব্যবহৃত পদ্ধতি
রিকারসিভভাবে GCD বের করে, তারপর উভয় সংখ্যাকে ভাগ করে ন্যূনতম ভগ্নাংশ বের করা হয়।
ইনপুট
Num1,Num2নিন।findGCD(int a, int b)ফাংশন রিকারসিভভাবে GCD ফেরত দেয়।যদি
b == 0হয়,aফেরত দিন, অন্যথায়findGCD(b, a%b)কল করুন।lowestFraction(int num1, int num2)ফাংশনে GCD বের করে উভয়কে ভাগ করুন।ফলাফল প্রিন্ট করুন।
উদাহরণ কোড
#include <bits/stdc++.h>
using namespace std;
int findGCD(int a, int b) {
if (b == 0)
return a;
return findGCD(b, a % b);
}
void lowestFraction(int num1, int num2){
int denom = findGCD(num1, num2);
num1 /= denom;
num2 /= denom;
cout << "Num1 = " << num1 << endl;
cout << "Num2 = " << num2 << endl;
cout << "Lowest Fraction : " << num1 << "/" << num2;
}
int main(){
int Num1 = 14;
int Num2 = 8;
lowestFraction(Num1, Num2);
return 0;
}
আউটপুট
উপরের কোড রান করলে নিচের আউটপুট পাওয়া যাবে:
Num1 = 7 Num2 = 4 Lowest Fraction : 7/4