作业帮 > 综合 > 作业

编写一个程序.有一个汽车类vehicle,它具有一个需传递参数的构造函数,汽车类vehicle中的数据成员为:车轮个数w

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/19 00:32:16
编写一个程序.有一个汽车类vehicle,它具有一个需传递参数的构造函数,汽车类vehicle中的数据成员为:车轮个数wheels和车重weight放在保护段中,汽车类vehicle中的公有成员函数为:get_wheels()(返回车轮个数的值)、get_weight()(返回车重的值)、wheel_load()(返回每个轮胎的载重量的值:weight/wheels)、print()(输出车轮的个数和车重的公斤数);
小车类car是vehicle类的派生类,它具有一个需传递参数的构造函数,小车类car中的私有数据成员为:车载人数passenger_load,小车类car中的公有成员函数为:get_passengers()(返回车载人数的值)、print()(输出小车车轮的个数和车重的公斤数以及车载人数的个数);
卡车类truck是vehicle类的派生类,它具有一个需传递参数的构造函数,卡车类truck中的私有数据成员为:载人数passenger_load和载重量payload,卡车类truck中的公有成员函数为:get_passengers()(返回车载人数的值)、efficiency()(返回卡车的载重效率的值:payload/(payload+weight)、print()(输出卡车车轮的个数和车重的公斤数以及车载人数的个数和卡车的载重效率的值)).
主函数中定义了一个基类vehicle的动态指针数组 pt2vehicle,数组长度n来自输入数据
vehicle **pt2vehicle = new vehicle*[n];
主函数根据输入的车辆类型和车辆基本信息,建立相应的类对象,并且取址按序赋给基类指针数组元素,最后遍历基类指针数组 pt2vehicle,并按照指定的序号输出相应的车辆信息.
输入格式:测试输入包含一个测试用例,该测试用例的第一行输入车辆的数目n,接下来n行每一行给出一个车辆的基本信息,每行的第一个字符处为当前车辆的类型,第二个数字为当前车辆的编号,若车辆为vehicle,后面跟随两个数字分别为wheels和weight,若车辆为car,后面跟随三个数字分别为wheels,weight和车载人数,若车辆为truck,后面跟随四个数字分别是wheels,weight、车载人数和载重量.(以上数字均为整型).接下来每一行给出一个序号m,要求输出第m个输入的车辆的基本信息,-1表示输入结束
输出格式:见输出样例
说明:本题中轮胎载重量、载重效率若需输出保留小数点后两位.
输入样例:
4
vehicle 101 4 1900
car 201 4 2000 5
truck 301 6 3000 2 9000
car 202 4 1800 4
3
4
2
1
5
-1
输出样例:
The 3th object is Truck No.301:passenger_load 2 weight 3000 Kg wheels 6 and efficiency 0.75
The 4th object is Car No.202:passenger_load 4 weight 1800 Kg and wheels 4
The 2th object is Car No.201:passenger_load 5 weight 2000 Kg and wheels 4
The 1th object is Vehicle No.101:weight 1900 Kg and wheels 4
Sorry!There are only 4 objects!
编写一个程序.有一个汽车类vehicle,它具有一个需传递参数的构造函数,汽车类vehicle中的数据成员为:车轮个数w
#include
#include
using namespace std;
class vehicle
{
protected:
\x05int id;
\x05int wheels;
\x05int weight;
public:
\x05vehicle(int w,int m,int i)
\x05:wheels(w),weight(m),id(i) {}
\x05int get_wheels() const
\x05{
\x05\x05return wheels;
\x05}
\x05double get_weight() const
\x05{
\x05\x05return weight;
\x05}
\x05double wheel_load() const
\x05{
\x05\x05return 1.0*weight/wheels;
\x05}
\x05virtual void print() const
\x05{
\x05\x05cout
再问: G:\C++\4.cpp(85) : error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'class std::basic_string' (or there is no acceptable conversion)
再答: 添加#include
用c++ 定义一个车(Vehicle)基类,有Run,Stop等成员函数,由此派生出自行车(bicycle)类,汽车(m 编写一个三角形类,数据成员为三边长,成员函数计算周长、面积,定义两个重载的构造 c++ Point类是对二维直角坐标系中的点的抽象.它拥有两个私有的数据成员,分别代表x和y坐标;另外有两个成员函数,一个是构造 定义一个复数类Complex,定义带有2个参数(都为缺省参数)的构造函数;重载“/”(成员函数实现);重载“ 定义一个名为Date的类,用于输入并验证日期,类中的数据成员和成员函数应满足以下规则;在主函数中编写相 编写一个三角形类,有计算面积,显示面积的功能等,并测试.要求有参数的构造函数及复制构造函数 编写一个圆类Circle该类有一个成员变量radius(私有浮点型)用于存放圆的半径,和两个构造器方法为Circle() 定义钟表类clock,要求:(1)定义私有成员变量2,定义成员函数3,定义有参数的构造函4、编写主函数并测试 定义一个描述复数的类,数据成员包括实部和虚部;成员函数包括输出复数以及构造函数的初始化. 设计一个圆类(circle),数据成员包括radius(圆半径);成员函数包括:1、构造函数(要求对构造函数进行重 用point类公有派生一个line类,其数据成员为起点和终点,给出完整的line类定义,其中包括构造拷贝析构函数 定义一个点类Point,成员变量包含x,y坐标,成员函数包含构造函数(无参和两个参数的构造函数),析构函数,输出坐标x,