第十五周 任务二
来源:互联网 发布:剑客软件手机 编辑:程序博客网 时间:2024/04/30 15:20
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:窗口练习 * 作 者: 薛广晨 * 完成日期: 2012 年 05 月22 日 * 版 本 号: x1.0 * 对任务及求解方法的描述部分 * 输入描述:窗口化 (分数的加减乘除)* 问题描述: * 程序头部的注释结束 */ //头文件 CFrac.hclass CFraction{private:int nume; // 分子int deno; // 分母 public:CFraction(int nu = 0, int de = 1) : nume(nu), deno(de){} //构造函数,初始化用void output();CFraction operator+(CFraction &c1);CFraction operator-(CFraction &c1);CFraction operator*(CFraction &c1);CFraction operator/(CFraction &c1);};//CFrac.cpp#include "stdafx.h"#include "CFrac.h"using namespace std;CFraction CFraction :: operator+(CFraction &c1){ CFraction c2; c2.deno = deno * c1.deno; c2.nume = nume * c1.deno + c1.nume * deno; c2.output(); return c2; } CFraction CFraction :: operator-(CFraction &c1){ CFraction c2; c2.deno = deno * c1.deno; c2.nume = nume * c1.deno - c1.nume * deno; c2.output(); return c2; } CFraction CFraction :: operator*(CFraction &c1){ CFraction c2; c2.deno = deno * c1.deno; c2.nume = nume * c1.nume; c2.output(); return c2; } CFraction CFraction :: operator/(CFraction &c1){ CFraction c2; c2.deno = deno * c1.nume; c2.nume = nume * c1.deno; c2.output(); return c2; }void CFraction :: output() { int i; if(nume >= 0) { if(deno < nume)i = deno; else i = nume; for(; i > 0; --i) { if(nume % i == 0 && deno % i == 0) { nume = nume / i; deno = deno / i; break; } } } else { nume = -nume; if(deno < nume)i = deno; else i = nume; for(; i > 0; --i) { if(nume % i == 0 && deno % i == 0) { nume = nume / i; deno = deno / i; break; } } nume = -nume; }
}
//button按钮void CcfractionDlg::OnBnClickedButton1(){// TODO: 在此添加控件通知处理程序代码UpdateData();//将界面上的各控件输入的值“捕获”到与之关联的变量中CFraction t1(m_nu1, m_du1);CFraction t2(m_nu2, m_de2);CFraction t3;if(m_a == "+")t3 = t1.operator+(t2);else if(m_a == "-")t3 = t1.operator-(t2);else if(m_a == "*")t3 = t1.operator*(t2);else if(m_a == "/")t3 = t1.operator/(t2);m_nu3 = t3.getnume();m_de3 = t3.getdeno();UpdateData(FALSE);}
上机感言: 费了好大的劲,终于做出来了。窗口看着就爽
- 第十五周 任务二
- 第十五周任务二
- 第十五周任务二
- 第十五周 任务二
- 第十五周任务二
- 第十五周任务二
- 第十五周任务二
- 第十五周任务(二)
- 第十五周作业任务二
- 第十五周任务(二)
- 第十五周实验报告(任务二)
- 第十五周实验报告 任务二
- 第十五周C++任务【二】拓展
- 《第十五周任务二》分数计算器
- C++程序设计实验报告(七十六)---第十五周任务二
- 第十五周任务二 MFC 分数的运算
- 第十五周任务(二)加减乘除运算的对话框
- 第十五周 任务一
- 从RTP到ORTP
- hdu 3065 病毒侵袭持续中
- ScrollBar使用-很全
- 64位Ubuntu无法运行Adnroid SDK adb命令
- ortp库使用入门
- 第十五周 任务二
- MAP和FIELD伪操作定义的内存表结构(绝对地址与相对地址的区别)
- Wince屏幕旋转使用的代码段
- 最小二乘法直线拟合
- 回调函数应用1
- 问题严重程度定义
- 数据透视表之在数据透视表中进行计算
- 从talk服务器上获取要交流对象的地址
- STL 中排序和通用的算法( 14 个 )