分数类
来源:互联网 发布:ubuntu 163源 16.04 编辑:程序博客网 时间:2024/05/06 15:34
/**Copyright (c) 2016,烟台大学计算机学院*All rights reserved.*文件名称:main.cpp*作 者:郭辉*完成时间:2016年4月7日*版 本 号:v1.0**问题描述:分数类*输入描述:两个整数。*程序输出:分数。*/#include<iostream>using namespace std;class CFraction{private:int nume;//分子 int deno;//分母 int gys; public:CFraction(int nu=0,int de=1);//构造函数,初始化用void set(int nu=0,int de=1); //置值,改变值时用void input(); //按照“nu/de ”的格式,如“2/5”的形式输入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};CFraction::CFraction(int nu,int de){ nume=nu; deno=de;}void CFraction::set(int nu,int de){ nume=nu; deno=de;}void CFraction::input(){ cout<<nume<<"/"<<deno<<endl;}void CFraction::simplify(){ int i,temp; for(i=nume;;i--) { if(nume%i==0&&deno%i==0) { gys=i; break; } } cout<<nume/i<<"/"<<deno/i<<endl;}void CFraction::amplify(int n){cout<<nume*n<<"/"<<deno<<endl;}void CFraction::output(int style){ if(style==0) cout<<nume<<"/"<<deno<<endl; else if(style==1) cout<<nume<<"/"<<deno<<endl; else if(style==2) { if(nume>deno) { int duoyu; duoyu=nume/deno; nume=nume%deno; cout<<duoyu<<"("<<nume<<"/"<<deno<<")"<<endl; } else { cout<<nume<<"/"<<deno; } } else(style==3); { double xiaoshu; xiaoshu=nume/deno; cout<<xiaoshu; }}int main(){int a,b,n;cin>>a>>b; CFraction cf(a,b);cf.set(a,b);cf.input();cf.simplify();cin>>n;cf.amplify(n);int style;cin>>style;cf.output(style);}
0 0
- 分数类
- 分数类
- 分数类
- 分数类。。
- 分数类
- 分数类
- 分数类
- 分数类
- 分数类
- 分数类
- 分数类
- 分数类
- 分数类
- 分数类
- 简单分数类
- 分数类的加减乘除
- C++实现:分数类
- 自定义分数类
- C/C++条件操作符与错误防范
- C++第三次上机实验—友元类
- Lintcode 用递归打印数字
- velocity中加载模板文件的方式
- SQL_2.scott账户下的四张联系表介绍
- 分数类
- C++重要性质02:继承(Inheritance)
- 使用Redis来实现LBS的应用
- JMeter中文使用手册
- mysql5.7.12安装问题
- NSThreader其他创建方式
- hdu 1272 小希的迷宫 并查集
- C++ Primer Plus编程练习7.13-4
- Spring mvc ---Hello World入门