Cpp程序没有按预期工作

时间:2015-09-11 11:08:23

标签: c++

您好我有一个简单的cpp程序来显示客户购买披萨时需要支付的金额。代码如下。但不知何故,金额显示0而不是正确的答案。有人请帮忙,我对Cpp真的很新。提前致谢。

#include <iostream>
#include <string>
using namespace std;
const int price = 20;

int main(){

    int radius = 0;
    int area = (3.14)* (radius);
    int amount;
    amount = (area) * (price);
    cout << " Enter the radius of the pizza u want \n";
    cin >> radius;
    cout << " Please pay amount" << amount << " at the cashier" << endl;
    cin.ignore();
    cin.ignore(); 
    return 0;
}

1 个答案:

答案 0 :(得分:1)

您在开始时将所有贵重物品设置为0。尝试:

int radius:

一开始,这将创建你的变量,但不给它一个值,然后在cin >> radius;之后,你可以基本上做你以前做过的事情:

cin >> radius;
auto area   = radius*radius * 3.14;
auto amount = area * price;

或者你可以摆脱area变量,只做:

cin >> radius;
auto amount = radius*radius * 3.14 * price;

另请注意,圈子的区域为pi*r*r,而不是pi*r。而且,你不应该使用int进行计算。在上面的代码中,auto会自动成为一个浮点数(在这种情况下为double,因为3.14double字面值。