ফ্র্যাকশনকে লোয়েস্ট টার্মে রিডিউস করা মানে এমন কোনো সংখ্যা নেই, ১ বাদে, যা নিউমেরেটর ও ডিনোমিনেটর উভয়কে সমভাগে ভাগ করতে পারে।
উদাহরণস্বরূপ, 24/4 একটি ফ্র্যাকশন, এর লোয়েস্ট টার্ম হলো 6, অথবা 12/16 একটি ফ্র্যাকশন যার লোয়েস্ট টার্ম হলো 3/4।
এখন একটি ফ্র্যাকশনকে তাদের লোয়েস্ট টার্মে রিডিউস করার C প্রোগ্রাম লিখি।
উদাহরণ ১
#include<stdio.h>
int main() {
int x, y, mod, numerat, denomi, lessnumert, lessdenomi;
printf("enter the fraction by using / operator:");
scanf("%d/%d", &x, &y);
numerat = x;
denomi = y;
switch (y) {
case 0: printf("no zero's in denominator\n");
break;
}
while (mod != 0) {
mod = x % y;
x = y;
y = mod;
}
lessnumert = numerat / x;
lessdenomi = denomi / x;
printf("lowest representation of fraction:%d/%d\n", lessnumert, lessdenomi);
return 0;
}
আউটপুট
enter the fraction by using / operator: 12/24 lowest representation of fraction: 1/2
উদাহরণ ২
// reduce the Fraction
#include <stdio.h>
int main() {
int num1, num2, GCD;
printf("Enter the value for num1 /num2:");
scanf("%d/%d", &num1, &num2);
if (num1 < num2) {
GCD = num1;
} else {
GCD = num2;
}
if (num1 == 0 || num2 == 0) {
printf("simplified fraction is %s\n", num1 ? "Infinity" : "0");
}
while (GCD > 1) {
if (num1 % GCD == 0 && num2 % GCD == 0)
break;
GCD--;
}
printf("Final fraction %d/%d\n", num1 / GCD, num2 / GCD);
return 0;
}
আউটপুট
Enter the value for num1 /num2: 28/32 Final fraction 7/8