C++ program
C++
mt_procode
这个作者很懒,什么都没留下…
展开
-
C++ 建立工资计算系统(3)
需求描述1、企业增加了一种全新的工种,称为销售顾问,其工资按照顾问咨询次数和销售产品的数量共同计算,每咨询一次报酬300元,每销售一件产品提成50元,请在已有类的基础上设计该员工类;2、由于员工类型多样,系统需要采用多态性对各类员工对象数据进行统一保存和处理,请根据此要求将已有类中涉及到员工工资计算和信息输出的接口设置为虚函数,为多态性的使用奠定基础;3、设计类型SalaryManager,其成员变量可保存系统中所有员工类型的对象,设计接口getTotalSalary和getAllInfo,分别计算所原创 2020-06-10 18:19:29 · 1062 阅读 · 0 评论 -
C++ 实现PhoneBook类
问题描述类图设计源代码//class#include <vector>#include <string>using namespace std;typedef struct phBook{ string no; string name; string number;}pb;class PhoneBook{ vector<pb> arr; int size_pb;public: PhoneBook(原创 2020-06-10 18:08:07 · 683 阅读 · 0 评论 -
C++实现IntStack类
问题描述类图设计源代码//class.h#include <iostream>using namespace std;typedef struct Node{ int element; struct Node* next; struct Node* pro; }node;class slist{ node* head;public: slist(); slist(int n); ~s原创 2020-06-10 18:01:38 · 571 阅读 · 0 评论 -
建立工资计算系统(2)
问题描述某企业为了提升自身管理效率,特别委托你为企业设计一个自动计算和发放员工工资的软件,具体设计内容包括:1、随着该企业规模的扩展,企业的员工类型逐渐多样化,工资系统的管理方式要随之发生改变。企业目前的员工主要分为三类,第一类为生产线员工,每工作一天企业记工资500元;第二类为销售员工,每工作一天企业记工资400元,但是每销售一件产品提成50元;第三类为顾问类员工,工资按咨询次数记,每次300元。2、请在 工资系统(1) 的基础上分别为这三类员工设计与之对应的员工类,他们共同继承超类Employee原创 2020-06-01 19:08:54 · 915 阅读 · 0 评论 -
C++ IntQueue类的设计
问题描述源代码这里是用vector数组实现://class.h#include <vector>using namespace std;class IntQueue{ vector <int> element; int sizes;public: IntQueue(); IntQueue(int sizes); IntQueue(const IntQueue& x); IntQueue& oper原创 2020-05-23 22:07:24 · 388 阅读 · 0 评论 -
建立工资计算系统(1)——员工和工资
问题描述1、创建一个Date类,能够表示一个日期,除了对日期进行输出、设置的一般成员方法以外,还需要一个方法,能够计算对象所保存日期与参数所给日期之间的差距,计算单位为“月”,同时重载Date类的赋值运算符。2、创建一个Employee类,能够保存一个企业员工的基本信息,除了基本信息属性以外,还需要属性保存该员工的月工资、开始工作的日期和上一次发放工资的日期。3、创建一个Salary类,可以用来表示一个工资金额,除基本成员变量和访问方法外,请为Salary类设计+、-运算符的重载函数;4、上面类所有原创 2020-05-19 20:49:11 · 1840 阅读 · 0 评论 -
ObjectCounter类的实现
问题描述UML图源代码//main.cpp#include <iostream>#include "ObjectCounter.h"using namespace std;int main(){ ObjectCounter a; cout << "a: " << a.getCounts() << endl; cout << "no: " << a.getID() << en原创 2020-05-17 17:30:50 · 484 阅读 · 0 评论 -
便利店小程序++
问题描述版本一请参见问题分析采用Goods(货物类)、Basket(购物车类)和Store(商店类)完成设计各类的类图如下:各类之间的关系如下:Basket ->(依赖) Goods 、Store ->(依赖) Basket流程图源代码//fun.h#include <vector>using namespace std;class Goods{ char* name; float price;public: G原创 2020-05-10 15:25:45 · 1035 阅读 · 0 评论 -
Fan类与Rational类的简单实现
问题描述设计一个Fan风扇类,要求如下:设计一个Rational有理数类,要求如下:问题分析Fan设计:Rational设计:源代码Fan://main.cpp#include <iostream>#include<string>#include "Fan.h"using namespace std;int main(){ ...原创 2020-05-08 12:46:51 · 291 阅读 · 0 评论 -
商贩卖pig和电话号码组合两类简单问题的求解
问题描述(1)商贩卖pig一个商贩养了一批猪,有一天赶着pig去村庄卖,每经过一个村庄就卖掉所有pig的一半又一只。这样他经过了 7 个村子后还剩 2 只pig,请计算并输出他一共养了多少只pig?输出经过每个村子卖出多少只pig?(2)电话号码对应的字符组合在电话或者手机上,一个数字比如 2 对应着字母 ABC,7 对应着PQRS。那么数字串 27 所对应的字符的可能组合就有 3*4=1...原创 2020-04-28 18:37:41 · 481 阅读 · 0 评论 -
便利店小程序
问题描述界面要求:如果选择了 1(2、3、4类似)界面如下:如果选择了 0问题分析输入:用户输入功能选择的编号和购买商品时的数量输出:主菜单、各类商品的购买、以及结算退出的界面主要处理过程:根据用户的选择切换界面并将用户要购买的商品存储在结构体数组里,最后在用户退出时结算并退出。流程设计源代码#include <iostream>#include ...原创 2020-04-22 14:30:14 · 528 阅读 · 0 评论 -
两个有序数组的合并问题
问题描述编写函数,将两个有序 vector 数组合并成一个新的有序 vector数组,函数原型为:vector<int> merg(vector<int> list1,vector<int> list2);问题分析首先将问题分解为两类处理方式:两个有序数组是否都是不空;两个有序数组的自身排列方式是升序还是降序;因此在函数内先默认两个数组都...原创 2020-04-22 13:59:46 · 655 阅读 · 0 评论 -
十进制向二进制转化的两种方法
写在前面解决此类问题的方法可能不止以下这两类方式(十进制转化为其它进制也是同样的道理,在此仅以转化为二进制为例),在此只对两类方式的一种解法加以解释,其余方式暂不再此次讨论范围内。方式一:递归递归算法优势在于对某些特定问题的求解上思路清晰,结构简单,书写方便,但缺点也十分明显,即时间效率非常差,但还是在此写出递归算法的具体实现源码,封装成函数仅供参考。源代码//这里的函数由于结构问题没...原创 2020-04-22 13:27:49 · 778 阅读 · 0 评论 -
C++ main函数参数的简单应用
写在前面C++中 main()函数的参数也可以为main()函数的声明参数表:int main(int argc,char* argv[]){......[代码段]}main()函数的参数表用于从命令行接受参数。其中 argc 是命令行参数的个数,字符串数组 argv 用于保存接收到的字符串(注意:argv 字符数组中的每个元素在命令行输入时是以空格区分的,所以输入时不同参数需以空格隔...原创 2020-04-22 12:29:06 · 311 阅读 · 0 评论 -
人民币值的转换问题
问题描述设计程序完成从阿拉伯数字到人民币风格的字符串转换,需完成的功能如下:1、 由用户输入并保存一个具有两位小数的金额,单位为元;2、 能够对用户输入的人民币金额进行输出;3、 能够将金额数值翻译成中文的表达方式进行输出;4、 程序不断读取用户输入,并给出两种输出,直到用户输入quit 结束执行。注意事项:1、用户输入纯整数或者纯小数;2、用户输入0或者0.0或者0.00要求输出...原创 2020-04-14 11:30:34 · 540 阅读 · 0 评论 -
数组和结构体应用
问题描述某位同学邀请k位朋友到家里做客。他拿出了巧克力招待盆友们。他一共有n块巧克力,其中每一块巧克力都是长方形。为了公平起见,这位同学需要从这n块巧克力中分出k块巧克力给盆友们。要求切出的巧克力要满足:1、形状是正方形,边长是整数,且是一整块。2、大小相同、朋友分得的巧克力能尽量的大。请设计算法求出满足要求的最大边长。(输入n,k,其中1 <= n,k <= 100000,...原创 2020-04-03 14:24:27 · 145 阅读 · 0 评论 -
学生成绩管理程序
学生成绩管理问题描述1、 可以存储学生的姓名、学号、性别和 A、B、C 三门课程的成绩;2、 能够对所有学生的姓名、学号、性别和三门课程的成绩进行显示;3、 能够根据学生三门课程的总成绩对学生的记录进行排序并输出;4、 能够输出每位有不及格课程的学生的学号、姓名和不及格课程的名字和成绩;问题分析输入: 用户输入要录入的学生人数用户输入要录入的学生信息(姓名、学号、性别...原创 2020-03-30 21:50:21 · 1121 阅读 · 0 评论 -
约瑟夫环问题
约瑟夫环问题问题描述N个人在一起做游戏,他们制定了一下规则:1、首先,所有参加游戏的人按顺序编号为1、2、3…N; 2、接下来每个人心里产生一个数字,这个数字称为序号为 N的人的密码P; 3、所有参加游戏的人按照编号站成一个圈,为游戏设置初始密码K,从编号为 1的人这里开始报数,报到 K的人退出队伍,然后将自己心中的密码 K2说出来,由下一个人继续从 1开始报数,报到 K2的人退出队伍...原创 2020-03-30 15:43:11 · 335 阅读 · 0 评论 -
如何找出int数组中只出现一次的两个元素(其它所有元素都出现了两次)?
如何找出int数组中只出现一次的两个元素?问题描述在一个int类型的数组中除有两个元素各出现了一次外,其它元素都出现了两次,最好能保证最好的时空效率。算法一回溯算法:#include <iostream>using namespace std;int main(){ int len = 0; //接受用户输入的数组长度 cout <...原创 2020-03-30 14:47:32 · 323 阅读 · 0 评论 -
估算圆周率 --- 蒙特卡洛算法的应用
蒙特卡洛算法应用 — 估算圆周率写在前面Monte Carlo method,也称为统计模拟方法,是一个针对计算机处理能力设计的利用概率统计理论解决一些较为复杂的计算问题的巧妙算法,是解决某些问题的唯一可行算法,下面将利用蒙特卡洛算法粗略计算圆周率的值。问题模型源代码#include <iostream>#include <cmath>#include...原创 2020-03-30 13:33:08 · 503 阅读 · 0 评论