第六周上机实践项目 项目1 - 分数类的雏形
来源:互联网 发布:费雪淘宝旗舰店 编辑:程序博客网 时间:2024/06/15 06:40
问题及代码:
/* Copyright(c)2016,烟台大学计算机与控制工程学院 All rights reserced 文件名称:test.cpp 作 者:蔡汝佳 完成日期:2016年4月7日 版 本 号:v1.0 问题描述: 输入描述: 程序输出:*/#include <iostream>using namespace std;class CFraction{private: int nume; // 分子 int deno; // 分母public: CFraction(int nu=0,int de=1); //构造函数,初始化用 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 gcd(int x,int y);};void CFraction::set(int nu,int de){ nume=nu; deno=de;}CFraction::CFraction(int nu,int de){ nume=nu; deno=de;}void CFraction::input(){ char c; cout<<"请输入分数:"; cin>>nume>>c>>deno;}int CFraction::gcd(int x,int y){ int r; while(y!=0) { r=x%y; x=y; y=r; } return x;}void CFraction::amplify(int n){ nume=nume*n;}void CFraction::simplify(){ int n; n=gcd(nume,deno); nume=nume/n; deno=deno/n;}void CFraction::output(int style){ if(style==0) cout<<"分数是:"<<nume<<'/'<<deno<<endl; if(style==1) { simplify(); cout<<"分数是:"<<nume<<'/'<<deno<<endl; } if(style==2) { int a; a=nume/deno; cout<<"分数是:"<<a; if(nume%deno!=0) cout<<'('<<nume%deno<<'/'<<deno<<')'<<endl; else cout<<endl; } if(style==3) { double b; b=nume/double(deno); cout<<b; }}int main(){ CFraction a; char c; int n; int nu,de; cout<<"请输入分数(格式为1/2):"; cin>>nu>>c>>de; a.set( nu, de); cout<<"原样输出请输入0"<<endl; cout<<"化简后输出请输入1"<<endl; cout<<"分式输出请输入2"<<endl; cout<<"用小数形式输出请输入3"<<endl; cout<<"请输入输出指令:"; cin>>n; a.output(n); return 0;}
运行结果:
知识点总结:
学习心得:
0 0
- 第六周上机实践项目1:分数类雏形
- 第六周上机实践项目——项目1-分数类的雏形
- 第六周上机实践项目-项目1-分数类的雏形
- 第六周上机实践项目 项目1 - 分数类的雏形
- 第六周项目-分数类的雏形
- 第六周项目1:分数的雏形
- 第四周上机实践项目2-分数类的雏形
- 第六周实践项目1————分数类的雏形
- 第六周项目1分数类的雏形
- 第六周项目1-分数类的雏形
- 第六周项目1-分数类的雏形
- 第六周项目一-分数类的雏形(1)
- 第六周项目1——分数类的雏形
- 第六周项目1==分数类的雏形
- 第六周【项目1-分数类的雏形】
- 第六周项目1—分数类的雏形
- 第六周 项目1-分数类的雏形
- 第六周项目1-分数类的雏形
- iOS 类方法与对象方法
- 第六周项目二 带武器的角色类
- 使用meminfo分析Android单个进程内存信息
- Java设计模式之一 单例设计模式
- 深度学习(四)卷积神经网络入门学习
- 第六周上机实践项目 项目1 - 分数类的雏形
- 第五周项目(4)-长方柱类
- myeclipse 常用快捷键
- 三角形问题(2)
- fixed和setprecision格式控制的函数使用
- linux下Tomcat安装
- iOS:通知机制的详解与代码示例
- SDWebImage底层实现原理
- 进程与线程的区别于联系