如何使用C ++中的Classes计算每加仑MPG英里数

时间:2017-07-28 16:35:06

标签: c++ c++11 visual-c++

你好我需要帮助理解愚蠢的C ++,任何人都可以帮助我理解如何使用类来计算MPG。这就是我到目前为止所拥有的。 我希望自己真的想要变得更好,但每个项目都在踢我的课堂。

#include <iostream>
using namespace std;

class cars{
    double miles;
    double gallons;
private:
    double miles[6] = {240.5, 300.0, 320.5, 280.7, 190.7, 265.3};
    double gallons[6] = {16.4, 15.6, 17.2, 15.4, 13.7, 16.9};

public:
    cars(double m, double g) : miles(m), gallons(g){}
    double mpg(void) {return miles / gallons;}
};


int main() {
    int i;
    cout << "Index\tMiles\tGallons\tMPG\n";
    for (i=0; i<6; i++) {
        cout << i << "\t" << miles[i] << "\t" << gallons[i] << endl;
    }
    char z; cin >> z;
}

我没有上课

#include <iostream>
using namespace std;


    double miles[6] = {240.5, 300.0, 320.5, 280.7, 190.7, 265.3};
    double gallons[6] = {16.4, 15.6, 17.2, 15.4, 13.7, 16.9};
    float mpg[6] = {0,0,0,0,0,0};
    int i;

    float mpgCal(){
        cout << mpg = miles/gallons;
        return mpg;

    }

int main() {
    cout << "Index\tMiles\tGallons\tMPG\n";
    for (i=0; i<6; i++) {
        cout << i << "\t" << miles[i] << "\t" << gallons[i] << "\t" << mpg[i] << endl;
    }
    char z; cin >> z;
}

2 个答案:

答案 0 :(得分:1)

注意:没有编译这个,因为我没有编译器方便的ATM。

你需要一系列汽车,而不是双打汽车。你的班级需要提供一种获得里程和加仑的方法。

#include <iostream>
using namespace std;

class car{
private:
    double miles;
    double gallons;
public:
    car(double m, double g) : miles(m), gallons(g){}
    double getMPG(void) const {return miles / gallons;}
    double getMiles(void) const {return miles;}
    double getGallons(void) const {return gallons;}
};

car cars[6]={ 
    car(240.5, 16.4), 
    car(300.0, 15.6), 
    car(320.5, 17.2), 
    car(280.7, 15.4), 
    car(190.7, 13.7), 
    car(265.3, 16.9)};

int main() {
    int i;
    cout << "Index\tMiles\tGallons\tMPG\n";
    for (i=0; i<6; i++) {
        cout << i << "\t" << cars[i].getMiles() << "\t" << cars[i].getMiles() << "\t" << cars[i].getMPG() << endl;
    }
    char z; cin >> z;
}

答案 1 :(得分:0)

你的代码有点乱。 如果你想使用汽车的概念,你的班级神秘是&#34;汽车&#34;。 或者你想创建一个类成员来计算MPG?

我认为你应该考虑这些术语:

  • 汽车是一个抽象概念
  • 我们可以创建6个Car
  • 实例
  • 现在我们有一个汽车阵列
  • 让它循环并要求每辆车显示其MPG。

您想使用哪种C ++?

C ++ 11关于什么编译器?

反正:

MAIN

#include <iostream>
#include "Car.h"

using namespace std;

int main(int argc, const char * argv[]) {

    const int MAX = 2;

    Car cars[MAX] = {
        Car(240.5,16.4),
        Car(300.0,15.6),
    };


    int i;
    cout << "Index\tMiles\tGallons\tMPG\n";
    for (i=0; i<MAX; i++) {
        Car c = cars[i];
        cout << i << "\t" << c.getMiles() << "\t" << c.getGallons()<< "\t" << c.mpg() << endl;
    }
    char z; cin >> z;

    return 0;
}

car.h

class Car{
private:

    double miles;
    double gallons;

public:
    Car(double m, double g);
    double mpg(void);

    double getMiles();
    double getGallons();


};

car.cpp

#include "Car.h"




Car::Car(double m, double g)
{
    miles = m;
    gallons = g;

}


double Car::mpg(void)
{
    double d = miles / gallons;
    return d;
}



double Car::getMiles(void)
{
    return miles;
}



double Car::getGallons(void)
{
    return gallons;
}

输出:

Index Miles Gallons MPG

0 240.5 16.4 14.6646

1 300 15.6 19.2308