Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tìm max của hai số hữu tỷ trong C++


Cho hai số hữu tỷ dạng p/q. Nhiệm vụ: tìm số lớn hơn.

Ví dụ:

Đầu vào: rat1 = 5/4, rat2 = 3/2

Đầu ra: 3/2

Giải thích:

5/4 = 1.25
3/2 = 1.5

Phương pháp giải

Tìm BCNN của mẫu số, quy đồng tử số, so sánh tử số.

Chương trình minh họa

Ví dụ

#include <bits/stdc++.h>
using namespace std;

int findLCM(int a, int b) {
    return (a * b) / (__gcd(a, b));
}

void maxRational(int ratOneNum, int ratOneDen, int ratTwoNum, int ratTwoDen) {
    int k = findLCM(ratOneDen, ratTwoDen);
    int oneNum = ratOneNum * k / ratOneDen;
    int twoNum = ratTwoNum * k / ratTwoDen;
    if (oneNum > twoNum)
        cout << ratOneNum << "/" << ratOneDen;
    else
        cout << ratTwoNum << "/" << ratTwoDen;
}

int main() {
    int ratOneNum = 5;
    int ratOneDen = 4;
    int ratTwoNum = 3;
    int ratTwoDen = 2;
    cout << "The maximum of the two rational Numbers is ";
    maxRational(ratOneNum, ratOneDen, ratTwoNum, ratTwoDen);
    return 0;
}

Kết quả

The maximum of the two rational Numbers is 3/2