[問題] 兩分數相加並約到最簡分數
遇到的問題: (題意請描述清楚)
程式跑到一半,自動關閉
希望得到的正確結果:
顯示出所輸入的兩個分數,相加約分後得到最後的答案
原始程式碼
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=0,b=0,c=0,d=0,x,y,u,v,temp;
printf("此程式為兩分數相加運算\n");
printf("\n請輸入第一個分數的分母:");
scanf("%d",&a);
printf("\n請輸入第一個分數的分子:");
scanf("%d",&b);
printf("\n請輸入第二個分數的分母:");
scanf("%d",&c);
printf("\n請輸入第二個分數的分子:");
scanf("%d",&d);
x=a*c;
y=b*c+a*d;
if (x>y)
{
u=x;
v=y;
}
else
{
u=y;
v=x;
}
while (u!=0)
{
temp=u%v;
u=v;
v=temp;
}
x=x/u;
y=y/u;
printf("\n%2d/%d+%2d/%d=%2d/%d",b,a,d,c,y,x);
system("PAUSE");
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.44.69.228
→
04/10 01:03, , 1F
04/10 01:03, 1F
→
04/10 01:04, , 2F
04/10 01:04, 2F
推
04/10 01:04, , 3F
04/10 01:04, 3F
→
04/10 01:04, , 4F
04/10 01:04, 4F
→
04/10 01:05, , 5F
04/10 01:05, 5F
→
04/10 01:13, , 6F
04/10 01:13, 6F
→
04/10 01:39, , 7F
04/10 01:39, 7F