第五周实验报告2
来源:互联网 发布:房产销售提成软件 编辑:程序博客网 时间:2024/06/01 15:25
/*
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: class time
* 作 者: 于昊
* 完成日期: 2012 年 03 月 20 日
* 版 本 号: 1.0
* 对任务及求解方法的描述部分
* 输入描述:输入时间
* 问题描述:
* 程序输出:时间
* 问题分析:
* 算法设计:……
* /
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: class time
* 作 者: 于昊
* 完成日期: 2012 年 03 月 20 日
* 版 本 号: 1.0
* 对任务及求解方法的描述部分
* 输入描述:输入时间
* 问题描述:
* 程序输出:时间
* 问题分析:
* 算法设计:……
* /
#include <iostream> using namespace std; int gcd(int a,int b);//求最大公约数 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),表示一又三分之一; //不给出参数和非1、2,认为是方式0 }; int main() { CFraction cf; cf.set(); cf.input(); cf.simplify(); cf.amplify(4); cf.output(2); system ("Pause"); return 0; } //构造函数,初始化用 CFraction::CFraction(int nu,int de) { if (de != 0) { nume = nu; deno = de; } else { cout << "分母不能为0! " << endl; exit(0);//直接退出 } } //置值,改变值时用 void CFraction::set(int nu,int de) { if(de != 0) { nume = nu; deno = de; } } void CFraction::input() { cout << "请输入分数(m/n):" << endl; int nu,de; while(1) { char c; cin >> nu >> c >> de; if(c != '/') { cout << "输入格式不对!" << endl; } else if(de == 0) { cout << "分母不能为0!" << endl; } else break; } nume = nu; deno = de; } int gcd(int a, int b)////求最大公约数 { int c; while(b != 0) { c = a % b; a = b; b = c; } return a; } void CFraction::simplify() { int t; t = gcd(nume,deno); nume = nume / t; deno = deno / t; } void CFraction::amplify(int n)////放大n倍,如2/3放大5倍为10/3 { nume = nume * n; cout << nume << '/' << deno << endl; } void CFraction::output(int style) { int x; switch (style) { case 0: cout << nume << '/' << deno << endl; case 1: x = gcd(nume,deno); cout << nume / x << '/' << deno / x << endl; break; case 2: x = gcd(nume,deno); nume = nume / x; deno = deno / x; cout << (nume / deno) << '(' << (nume %deno)<< '/' << deno << ')' << endl; break; default : cout << nume << '/' << deno << endl; } }
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 第五周实验报告2
- 《第五周实验报告任务2》
- 第五周实验报告(任务2)
- 第五周实验报告 1-2
- 第五周实验报告 任务2
- 第五周实验报告(1-2)
- 第五周实验报告(2)
- java 第五周实验【报告2】
- ( This Blog ).关于();
- gps
- 搜索引擎索引之如何更新索引
- Can not find the tag library descriptor for "http://java.sun.com/jsp/jstl/core"
- 批处理创建数据库
- 第五周实验报告2
- VB中的窗口位图
- 《Java Concurrency in Practice》ch11 Performance and Scalability
- 分布式数据库
- 一维对流扩散问题TDMA算法
- 图的相关算法
- sizeof ()和strlen()的区别
- Say Hello!
- ROR (一)