分数计算
来源:互联网 发布:java中static的作用 编辑:程序博客网 时间:2024/04/27 18:14
分数计算
分数的计算要用到,两个分数的通分,还有分子与分母的化简
#include<stdio.h>
int gys(int x,int y)//最大公约数,主要用来分子与分母的化简
{
return y?gys(y,x%y):x;
}
int gbs(int x,int y)//最小公倍数,主要用来两个分数的通分
{
return x/gys(x,y)*y;
}
void yuefen(int fz,int fm)//两个数的约分,化简
{
int s=gys(fz,fm);//求出两数的最大公约数
fz/=s;
fm/=s;
printf("结果为:%d/%d/n",fz,fm);
}
void add(int a,int b,int c,int d)//加法
{
int u1,u2,v=gbs(b,d),fz1,fm1;
u1=v/b*a;//用最小公倍数来通分
u2=v/d*c;
fz1=u1+u2;
fm1=v;
yuefen(fz1,fm1);
}
void mul(int a,int b,int c,int d)//减法
{
int u1,u2,v=gbs(b,d),fz1,fm1;
u1=v/b*a;//用最小公倍数来通分
u2=v/d*c;
fz1=u1-u2;
fm1=v;
yuefen(fz1,fm1);
}
void sub(int a,int b,int c,int d)//乘法
{
int u1,u2;
u1=a*c;
u2=b*d;
yuefen(u1,u2);
}
void div(int a,int b,int c,int d)//除法
{
int u1,u2;
u1=a*d;
u2=b*c;
yuefen(u1,u2);
}
void main()
{
char op;
int a,b,c,d;
scanf("%ld/%ld%c%ld/%ld",&a,&b,&op,&c,&d);
switch(op)
{
case '+':add(a,b,c,d);break;
case '-':mul(a,b,c,d);break;
case '*':sub(a,b,c,d);break;
case '/':div(a,b,c,d);break;
}
}
- 分数计算
- 分数计算
- 比赛分数的计算
- 计算分数的加减乘除
- java 分数计算
- 计算分数的和
- 分数的计算。。。
- 计算分数精确值
- 计算分数精确值
- 小数、分数的计算
- 计算分数精确值
- 计算分数精确值
- 计算分数的精确值
- HDOJ 2503 计算分数加法
- 计算分数的精确值
- 1016:计算利息 分数: 1
- 分数计算问题和答案
- 计算分数的精确值
- 暂时就是这么多了
- OpenVZ
- android中JNI知识
- mscorsvw.exe 关闭方法
- 在指定的位置后插入字符串
- 分数计算
- 清炒土豆丝的做法详细介绍
- Selenium+ANT+TestNG (SAT) Framework
- SQLServer 数据库的数据汇总完全解析(WITH ROLLUP)(自学篇1)
- 打包Asp.Net 网站成为一个exe 方便快捷的进行客户演示
- 结合selenium grid和testNG实现自动web测试的并发执行
- 结合selenium grid和testNG实现自动web测试的并发执行
- 结合selenium grid和testNG实现自动web测试的并发执行
- JS带纵向缩略图的焦点图片切换(可自动播放 五幅)