资源简介
运用C++函数重载等方法编写的简单计算器,实现所有有理数计算。将C++的基本内容涵盖了,适合初学者复习总结之用
代码片段和文件信息
#include“Fenshu.h“
//计算分子分母的最大公约数,并返回最大公约数
int Fenshu::gcd(int fziint fmu)
{
int yushu;
yushu=fzi if(yushu!=fmu)
{
fzi=fmu;
fmu=yushu;
}
while(yushu)
{
yushu=fzi%fmu;
fzi=fmu;
fmu=yushu;
}
return fzi;
}
//将分数化作最简分数
void FsJianHua(Fenshu& fenshu)
{
int gcd=abs(fenshu.gcd(fenshu.fenzifenshu.fenmu));
if(gcd!=1)
{
fenshu.fenzi=fenshu.fenzi/gcd;
fenshu.fenmu=fenshu.fenmu/gcd;
}
}
//重载运算符<<以假分数形式输出
ostream&operator<<(ostream& streamFenshu& fenshu)
{
FsJianHua(fenshu);
if(fenshu.fenmu!=1)
stream< else
stream< return stream;
}
//重载运算符>>
istream&operator>>(istream& streamFenshu& fenshu)
{
cout<<“输入整数或分数(z/f):“;
char delt;
cin>>delt;
if(delt==‘f‘||delt==‘F‘)
{
cout<<“请输入该分数分子:“;
stream>>fenshu.fenzi;
cout<<“请输入该分数分母:“;
stream>>fenshu.fenmu;
while(!fenshu.fenmu)
{
cout<<“分母不能为0,请再次输入!“< cout<<“请输入该分数分母:“;
stream>>fenshu.fenmu;
}
}
else
{
cout<<“输入一个整数:“;
stream>>fenshu.fenzi;
fenshu.fenmu=1;
}
return stream;
}
Fenshu& Fenshu::operator=(int zhengshu)
{
fenzi=zhengshu;
fenmu=1;
return *this;
}
Fenshu operator+(Fenshu& fenshu1Fenshu& fenshu2)
{
return Fenshu(fenshu1.fenzi*fenshu2.fenmu+fenshu1.fenmu*fenshu2.fenzifenshu1.fenmu*fenshu2.fenmu);
}
Fenshu operator-(Fenshu& fenshu1Fenshu& fenshu2)
{
return Fenshu(fenshu1.fenzi*fenshu2.fenmu-fenshu1.fenmu*fenshu2.fenzifenshu1.fenmu*fenshu2.fenmu);
}
Fenshu operator*(Fenshu& fenshu1Fenshu& fenshu2)
{
return Fenshu(fenshu1.fenzi*fenshu2.fenzifenshu1.fenmu*fenshu2.fenmu);
}
Fenshu operator/(Fenshu& fenshu1Fenshu& fenshu2)
{
return Fenshu(fenshu1.fenzi*fenshu2.fenmufenshu1.fenmu*fenshu2.fenzi);
}
Fenshu operator+(Fenshu& fenshuint zhengshu)
{return fenshu+Fenshu(zhengshu);}
Fenshu operator-(Fenshu& fenshuint zhengshu)
{return fenshu-Fenshu(zhengshu);}
Fenshu operator*(Fenshu& fenshuint zhengshu)
{return fenshu*Fenshu(zhengshu);}
Fenshu operator/(Fenshu& fenshuint zhengshu)
{return fenshu/Fenshu(zhengshu);}
Fenshu operator+(int zhengshuFenshu& fenshu)
{return Fenshu(zhengshu)+fenshu;}
Fenshu operator-(int zhengshuFenshu& fenshu)
{return Fenshu(zhengshu)-fenshu;}
Fenshu operator*(int zhengshuFenshu& fenshu)
{return Fenshu(zhengshu)*fenshu;}
Fenshu operator/(int zhengshuFenshu& fenshu)
{return Fenshu(zhengshu)/fenshu;}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 50176 2003-01-16 16:48 test1\Fenshu.ncb
文件 772 2003-01-16 16:17 test1\Fenshu.plg
文件 3490 2010-05-28 00:53 test1\分数计算.dsp
文件 541 2010-05-28 00:53 test1\分数计算.dsw
文件 33792 2010-05-28 00:53 test1\分数计算.ncb
文件 48640 2010-05-28 00:53 test1\分数计算.opt
文件 673 2010-05-28 00:53 test1\分数计算.plg
文件 1149 2003-01-15 21:40 test1\Fenshu.h
文件 2554 2003-01-15 21:40 test1\Fenshu.cpp
文件 1424 2003-01-15 21:53 test1\分数计算.cpp
文件 48640 2003-01-16 16:48 test1\Fenshu.opt
文件 3468 2003-01-16 16:48 test1\Fenshu.dsp
文件 537 2003-01-16 16:48 test1\Fenshu.dsw
文件 91136 2003-01-16 16:19 test1\Debug\vc60.idb
文件 110592 2003-01-16 15:39 test1\Debug\vc60.pdb
文件 1098752 2003-01-16 16:17 test1\Debug\Fenshu.pdb
文件 2007152 2003-01-16 15:39 test1\Debug\Fenshu.pch
文件 262316 2003-01-16 16:17 test1\Debug\Fenshu.obj
文件 186450 2003-01-16 16:17 test1\Debug\分数计算.obj
文件 817288 2003-01-16 16:17 test1\Debug\Fenshu.ilk
文件 544886 2003-01-16 16:17 test1\Debug\Fenshu.exe
目录 0 2003-01-01 04:32 test1\Debug
目录 0 2003-01-01 04:32 test1
----------- --------- ---------- ----- ----
5314428 23
相关资源
- C++primer第四版清晰版电子书及全部答
- c++语言程序设计第三版清华大学出版
- C++ AMP 用Visual C++加速大规模并行计算
- C++简单实现用户管理系统
- C++模板实现大根堆的插入删除以及初
- c++-primer-plus(第六版)-编程练习答案
- Microsoft Visual C++ 20XX运行库合集vc2005
- Microsoft.Visual.C++.NET技术内幕第六版
- MFC课程设计学生管理系统
- Effective C++中文版第三版 高清PDF
- 常用算法程序集C语言及C++描述第五版
- 自动解决智能拼图,A*算法+生成可解
- 可以在单片机上计算的BP神经网络C语
- c++常见笔试试题及答案
- NOIP2018普及组C++试题答案
- C++写的商店管理系统
- 潮流计算C++程序
- 成绩管理系统VC++6.0
- 计算机二级C语言机考题库
- C++ Primer中文第五版.zip
- FPS射击游戏《林海雪原》完整c++源代
- Microsoft Visual C++.NET技术内幕
- VC++6.0技术内幕第五版中文版+英文版
- Visual C++ 网络高级编程PDF 源代码
- Visual C++开发基于SNMP的网络管理软件
- MFC平台C++语言的小游戏代码
- C++程序设计教程(第2版).钱能(带详
- win 10解决系统缺失vc++库
- C++实现监控IP数据包
- 《C++程序设计原理与实践》第二版英
评论
共有 条评论