কম্পিউটার টিউটোরিয়াল

C প্রোগ্রাম: হয়াইল লুপ ব্যবহার করে কোনো ফ্র্যাকশনকে লোয়েস্ট টার্মে রিডিউস করা


ফ্র্যাকশনকে লোয়েস্ট টার্মে রিডিউস করা মানে এমন কোনো সংখ্যা নেই, ১ বাদে, যা নিউমেরেটর ও ডিনোমিনেটর উভয়কে সমভাগে ভাগ করতে পারে।

উদাহরণস্বরূপ, 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

  1. ডাবলি লিংকড লিস্টে যেকোনো পজিশনে নোড ইনসার্ট করার C প্রোগ্রাম

  2. ফর লুপ ব্যবহার করে ১ থেকে N পর্যন্ত প্রাইম নম্বর প্রিন্ট করার সি প্রোগ্রাম

  3. পাইথনে লুপ ছাড়া নাম্বার সিরিজ প্রিন্ট করা (রিকার্শন)

  4. পাইথন প্রোগ্রাম: লুপ ছাড়া নাম্বার সিরিজ প্রিন্ট করা