将double变量设置为另一个变量的值

时间:2018-10-05 19:32:21

标签: c++

我确定这里缺少一些简单的东西。使用我发布的代码,如何将双“条件”设置为双“州际”的值?我认为输入“州际公路”作为对我的“判罚”问题的答案是可行的。我得到的计算结果是垃圾。

double multiplyAmount(double overage)
{
    double interstate = 1.25;
    double countyRd = 2.23;
    double condition;
    double result;

    cout << "Enter condition of road: ";
    cin >> condition;

    result = overage * condition;

    return result;
}

1 个答案:

答案 0 :(得分:1)

可变的名称纯粹是词法,这意味着它们在编译过程之外不存在(例如,在用户输入内容时在运行时不存在)。

有很多方法可以实现您想要的。

这里是其中之一:

#include <string>

double multiplyAmount(double overage)
{
    double interstate = 1.25;
    double countyRd = 2.23;
    double condition;
    double result;
    string conditionInput;

    cout << "Enter condition of road: ";
    cin >> conditionInput;

    if(conditionInput=="interstate") {
        condition = interstate;
    } else if(conditionInput=="countryRd") {
        condition = countryRd;
    } else {
        cout << "Unknown condition" << conditionInput << std::endl;
        abort();
    }

    result = overage * condition;

    return result;
}