Tenth week Project five motorcycles inherit bicycles and motor vehicles

Source: Internet
Author: User

        /* *copyright (c) 2016, Computer College of Yantai University        *    : Liu Jinshi        * Completion Date: May 9, 2016        * Problem Description: Motorcycles Inherit bicycles and motor vehicles * *

#include <iostream> #include <conio.h> #include <windows.h>using namespace Std;enum Vehiclestaus {  rest, running};       Vehicle status: Parking, travel class Vehicle//Vehicle class {Protected:int maxspeed;   Maximum speed int currentspeed;         Current speed int weight; Vehicle weight Vehiclestaus status; rest-parking status; running-travel status public:vehicle (int maxs, int w);  Constructor, when initially, the current speed is always 0 and in the parking state void start (); From rest state to running, the initial velocity is 1 void stop ();  Parking void speed_up () is allowed by the running state to rest at the current speed of less than 5 o'clock; Acceleration, call 1 times, speed plus 1 void slow_down (); Deceleration, call 1 times, speed minus 1, speed is 0 o'clock, parking};//constructor, initially, the current speed is always 0 and in the parking state vehicle::vehicle (int maxs, int w): Maxspeed (MAXS), Currentspeed (0 ), Weight (W), status (rest) {}//start: From rest state to running, muzzle velocity is 1void vehicle::start () {if (status==rest) {Status=runni        Ng    currentspeed=1; } else cout<< "The vehicle is already running! "<<endl;}            Parking void Vehicle::stop () {if (status==running) if (currentspeed<5) {if the running state to rest, current speed is less than 5 o'clock            Status=rest; CurrentspEed=0; } else cout<< "Speed too fast!"    Slow down before stopping ... "<<endl; else cout<< "Vehicle not activated! "<<endl;} Acceleration, call 1 times, speed plus 1void vehicle::speed_up () {if (status==running) if (currentspeed<maxspeed) ++currentsp        Eed    else cout<< "Please don't go speeding ..." <<endl; else cout<< "Vehicle not activated! "<<endl;} Slow down, call 1 times, speed minus 1, speed is 0 o'clock, stop void Vehicle::slow_down () {if (status==running) {if (currentspeed>0)--c    Urrentspeed; } else cout<< "Vehicle not started!    "<<endl; if (currentspeed==0) status=rest;} Class Bicycle:virtual Public Vehicle//() Bicycle class {protected:double height;//car height public:bicycle (int maxs=10, int w=50,   int h=0.7); Define constructor}; bicycle::bicycle (int maxs, int w, int h): Vehicle (Maxs, W), height (h) {}class motorcar:virtual public vehicle//() motor vehicle class {Prot Ected:int Seatnum; Number of seats int passengernum;   Number of passengers public:motorcar (int maxs=150, int w=1500, int s=5, int p=1);    Defining constructorsvoid Addpassenger (int p=1); Carrying passengers, overcrowding to refuse, when someone alighted, p is negative. Of course, there are at least 1 passengers (drivers) in the car. Keep safe when you get off the bus ...};//define constructors motorcar::motorcar (int maxs, int w, int s, int p): Vehicle (Maxs, W), Seatnum (s), Passengernum (p) {}// Carrying passengers, overcrowding to refuse, when someone alighted, p is negative. Of course, there are at least 1 passengers (drivers) in the car. Keep safe when you get off the bus ... void motorcar::addpassenger (int p) {if (status==running) {cout<< "vehicle is driving, stop and get off!    "<<endl;        } else {passengernum+=p;            if (passengernum>seatnum) {passengernum=seatnum; cout<< "allegedly overcrowding, has been cleared to reach full!"        "<<endl;            } else if (passengernum<1) {passengernum=1; cout<< "Ask the driver not to leave the post!"        "<<endl; }}}class motorcycle:public Bicycle, Public motorcar//() Motorcycle class {public:motorcycle (int maxs=90, int w=100, int s=3, I   NT P=1, int h=0.7); Define constructor void Show (); Displays the running status of the motorcycle};//definition constructor motorcycle::motorcycle (int maxs, int w, int s, int p, int h): Vehicle (Maxs, W), Bicycle (Maxs, W, h), Mo Torcar (Maxs, W, S, p) {}//shows the running status of the motorcycle void MotorcYcle::show () {cout<< "status:";    if (status==rest) cout<< "parking; \ t";    else cout<< "marching; \ t"; cout<< "Speed:" <<currentSpeed<< "/" << maxspeed << "\ t current occupant:" <<passengerNum<< " /"<< seatnum << Endl;}    int main () {motorcycle m;    BOOL End=false;        while (!end) {cout<< "please operate: 1-Start 2-acceleration 3-deceleration 4-people get on the bus 5-someone gets off 6-stop 0-end" <<endl; Char keydown= _getch (); _getch () returns the character read on the keyboard, should contain header file <conio.h> switch (keydown) {case ' 1 ': cout<< "The selected action is            1-start \ t ";            M.start ();        Break            Case ' 2 ': cout<< "The selected operation is 2-acceleration \ t";            M.speed_up ();        Break            Case ' 3 ': cout<< "The selected operation is 3-deceleration \ t";            M.slow_down ();        Break            Case ' 4 ': cout<< "The selected operation is 4-someone get on the bus \ T";            M.addpassenger ();        Break            Case ' 5 ': cout<< "The selected operation is 5-someone gets off \ t";M.addpassenger (-1);        Break            Case ' 6 ': cout<< "The selected operation is 6-stop \ T";            M.stop ();        Break            Case ' 0 ': end=true;        Break        } m.show ();        cout<<endl;  Sleep (200); To include header file <windows.h>} return 0;}


Tenth week Project five motorcycles inherit bicycles and motor vehicles

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.