43.分?jǐn)?shù)比較
比較兩個(gè)分?jǐn)?shù)的大小。
*問題分析與算法設(shè)計(jì)
人工方式下比較分?jǐn)?shù)大小最常用的方法是:進(jìn)行分?jǐn)?shù)的通分后比較分子的大小??梢跃幊棠M手式方式。
*程序與程序注釋
#include
int zxgb(int a,int b);
void main()
{
int i,j,k,l,m,n;
printf("Input two FENSHU:\n");
scanf("%d/%d,%d/%d",&i,&j,&k,&l); /*輸入兩個(gè)分?jǐn)?shù)*/
m=zxgb(j,l)/j*i; /*求出第一個(gè)分?jǐn)?shù)通分后的分子*/
n=zxgb(j,l)/l*k; /*求出第二個(gè)分?jǐn)?shù)通分后的分子*/
if(m>n) printf("%d/%d>%d/%d\n",i,j,k,l); /*比較分子的大小*/
else if(m==n) printf("%d/%d=%d/%d\n",i,j,k,l); /*輸出比較的結(jié)果*/
else printf("%d/%d<%d/%d\n",i,j,k,l);
}
int zxgb(int a,int b)
{
long int c;
int d;
if(a for(c=a*b;b!=0;)
{
d=b; b=a%b; a=d;
}
return (int)c/a;
}
*運(yùn)行結(jié)果
輸入: 4/5,6/7 輸出: 4/5<6/7
輸入: 8/4,16/32 輸出: 8/4>16/32
輸入:16/32,4/8 輸出: 16/32=4/8
比較兩個(gè)分?jǐn)?shù)的大小。
*問題分析與算法設(shè)計(jì)
人工方式下比較分?jǐn)?shù)大小最常用的方法是:進(jìn)行分?jǐn)?shù)的通分后比較分子的大小??梢跃幊棠M手式方式。
*程序與程序注釋
#include
int zxgb(int a,int b);
void main()
{
int i,j,k,l,m,n;
printf("Input two FENSHU:\n");
scanf("%d/%d,%d/%d",&i,&j,&k,&l); /*輸入兩個(gè)分?jǐn)?shù)*/
m=zxgb(j,l)/j*i; /*求出第一個(gè)分?jǐn)?shù)通分后的分子*/
n=zxgb(j,l)/l*k; /*求出第二個(gè)分?jǐn)?shù)通分后的分子*/
if(m>n) printf("%d/%d>%d/%d\n",i,j,k,l); /*比較分子的大小*/
else if(m==n) printf("%d/%d=%d/%d\n",i,j,k,l); /*輸出比較的結(jié)果*/
else printf("%d/%d<%d/%d\n",i,j,k,l);
}
int zxgb(int a,int b)
{
long int c;
int d;
if(a for(c=a*b;b!=0;)
{
d=b; b=a%b; a=d;
}
return (int)c/a;
}
*運(yùn)行結(jié)果
輸入: 4/5,6/7 輸出: 4/5<6/7
輸入: 8/4,16/32 輸出: 8/4>16/32
輸入:16/32,4/8 輸出: 16/32=4/8