补二
来源:互联网 发布:电信4g首选网络类型 编辑:程序博客网 时间:2024/04/29 10:10
一、问题及代码
/* 文件名称:program2 作者:贺南鹏 完成时间:2017年5月8日 版本号:v1.0 对任务及求解方法的描述部分: *输入描述:无 *程序输出:无 *问题分析:无 *算法设计:无 #include<iostream> #include<cstdlib> using namespace std; class CFraction { private: int nume; // 分子 int deno; // 分母 public: CFraction(int nu=0,int de=1):nume(nu),deno(de){if(de==0)exit(0);}; //构造函数,初始化用 void set(int nu=0,int de=1); //置值,改变值时用 void input(); //按照"nu/de"的格式,如"5/2"的形式输入 void simplify(); //化简(使分子分母没有公因子) void amplify(int n); //放大n倍,如2/3放大5倍为10/3 void output(int style=0); //输出:以8/6为例,style为0时,原样输出8/6; //style为1时,输出化简后形式4/3; //style为2时,输出1(1/3)形式,表示一又三分之一; //style为3时,用小数形式输出,如1.3333; //默认方式0 }; int main() { CFraction num1; num1.output(0); num1.set(8,5); num1.output(0); num1.output(1); num1.output(2); num1.output(3); num1.set(15,25); num1.output(0); num1.output(1); num1.output(2); num1.output(3); return 0; } void CFraction::set(int nu,int de) //置值,改变值时用 { nume=nu; deno=de; } void CFraction::input() //按照"nu/de"的格式,如"5/2"的形式输入 { int a,b; char op; cout<<"请输入数据:"; cin>>a>>op>>b; if(op!='/') { cout<<"输入错误!"<<endl; exit(0); } else { nume=a; deno=b; } } void CFraction::simplify() //化简(使分子分母没有公因子) { int m,nu,de; nu=nume; de=deno; while(m) { m=de%nu; de=nu; nu=m; } cout<<nume/de<<'/'<<deno/de<<endl; } void CFraction::amplify(int n) //放大n倍,如2/3放大5倍为10/3 { nume*=n; } void CFraction::output(int style) //输出:以8/6为例,style为0时,原样输出8/6;style为1时,输出化简后形式4/3; //style为2时,输出1(1/3)形式,表示一又三分之一; //style为3时,用小数形式输出,如1.3333; //默认方式0 { switch(style) { case 0: cout<<nume<<'/'<<deno<<endl;break; case 1: simplify();break; case 2: if(nume/deno>0) { cout<<nume/deno<<'('<<nume%deno<<'/'<<deno<<')'<<endl; break; } else { cout<<nume<<'/'<<deno<<endl; break; } case 3: cout<<0.1*nume/deno<<endl;break; } }二、运行结果:
0 0
- 补二
- 补二
- IOS Notes(二)补
- METEOR培训二,补
- 补做实验二
- 补二:5-5
- 第一、二天(补)
- C++补做实验二
- C++补做作业二
- C++补做实验二
- 内存补齐序列二:内存补齐机制
- Zebra命令模式分析(二)[补]
- Android补间动画xml法(二)
- 补———实验二
- android动画(二)补间动画
- Android自动补全(二)
- 补
- 补
- Spring的缓存注解
- 大数据文本分类、聚类思想
- 1.4存储器
- 汽车VIN码识别做到1秒识别与解析
- 1.5指令和数据
- 补二
- Git命令学习整理
- Android好看的自定义滚动式日期选择控件和数字选择器
- ajax跨域深度总结
- 338. Counting Bits
- HDU 1166 敌兵布阵
- abstract class和 interface 有什么区别?
- 1.6存储单元
- c++中多个线程使用同一个函数