第4周项目2-分数类的雏形
来源:互联网 发布:键盘吉他软件 编辑:程序博客网 时间:2024/05/16 01:29
问题描述:
完成分数类的设计,并在main()函数中自行定义对象,调用各成员函数,完成基本的测试。
代码:
#include <iostream>#include <cmath>using namespace std;class CFraction{private: int nume; // 分子 int deno; // 分母public: CFraction(int nu=0,int de=1):nume(nu),deno(de) {}; //构造函数,初始化用 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 cf1(7,4); cf1.output(1); cf1.set(8,6); cf1.simplify(); cf1.output(); cf1.amplify(7); cf1.output(2); cf1.input(); cf1.output(3); return 0;}void CFraction::output(int s){ switch(s) { case 0: cout<<nume<<"/"<<deno<<endl; break; case 1: simplify(); cout<<nume<<"/"<<deno<<endl; break; case 2: int i; i=nume/deno; nume=nume%deno; cout<<i<<"("<<nume<<"/"<<deno<<")"<<endl; break; case 3: double a; a=double(nume)/double(deno) ; cout<<a<<endl; break; }}void CFraction::simplify(){ int r,n,d; n=nume; d=deno; while(d!=0) { r=n%d; n=d; d=r; } nume=nume/n; deno=deno/n;}void CFraction::set(int nu,int de){ nume=nu; deno=de;}void CFraction::amplify(int n){ nume=nume*n;}void CFraction::input(){ char a; cout<<"输入分数:"; do { cin>>nume>>a>>deno; if(a!='/') cout<<"格式错误,重新输入:"; } while(a!='/');}
运行结果:
0 0
- 第4周项目2-分数类的雏形
- 第4周项目2--分数类的雏形
- 2015-第4周项目2-分数类的雏形
- 第4周项目2分数类的雏形
- 第4周项目2-分数类的雏形
- 第4周项目2-分数类的雏形
- 第4周项目2-分数类的雏形
- 第4周项目2分数类的雏形
- 第3周-项目2-分数类的雏形
- 第3周项目2-分数类的雏形
- 第4周项目2——分数类的雏形
- 第四周项目2 分数的雏形
- 第四周 项目2-分数类雏形
- 第3周项目-分数类的雏形
- 第6周-项目1-分数类的雏形
- 第6周项目1—分数类的雏形
- 第6周项目1:分数类的雏形
- 第6周项目1 分数类的雏形
- android实现类似在短信图标右上角显示短信个数的效果
- 基于Twemproxy的Redis集群方案
- 【Maven】maven配置默认使用的JDK版本
- OpenCV图像的轮廓的匹配
- CA framwork
- 第4周项目2-分数类的雏形
- windows和Linux之间socket传输结构体关于字节对齐产生的问题
- 淘宝刷单技巧
- 软件架构——生态思维
- 停下来,聆听风的声音
- HttpWatch工具简介及使用技巧
- hdu 1506 Largest Rectangle in a Histogram (DP)
- [寒江孤叶丶的Cocos2d-x之旅_30]Cocos2d-x 3.5 EditBox无法显示字体的原因
- hdu1015--Safecracker(dfs)