4.28趣味百题4.7
一 问题描述
比较两个分数的大小
二 设计思路
输入两个分数 先把分数化为最简分式 接着求两个分数的最小公倍数 比较分子大小
三 流程图
四 c++代码实现
#include<iostream>
using namespace std;
int ifzdgy(int ,int );
int main()
{
int x1, y1, x2, y2;
int m = 0, n = 0;
cin >> x1 >> y1 >> x2 >> y2;
m = ifzdgy(y1, y2) * x1 / y1;
n = ifzdgy(y1, y2) * x2 / y2;
if (m > n)
{
cout << x1 << "/" << y1 << ">" << x2 << "/"<<y2;
}
else if (m == n)
{
cout << x1 << "/" << y1 << "==" << x2 << "/"<<y2;
}
else
{
cout << x1 << "/" << y1 << "<" << x2 << "/"<<y2;
}
return 0;
}
int ifzdgy(int a, int b)
{
long int c = a * b;
int d = 0;
if (a < b)
{
a = a + b;
b = a - b;
a = a - b;
}//交换a,b使得a>b
for (; b != 0;)
{
d = b;
b = a % b;
a = d;
}
return (int)c / a;
}