【问题标题】:C++ variables not adding if decimal points are added如果添加小数点,则不添加 C++ 变量
【发布时间】:2015-09-10 03:30:09
【问题描述】:

我正在尝试制作一个“制表”程序,这是一个制作简单图形的公式。我遇到的问题是,如果某些变量有小数点,则不会添加,这使得它在无限循环中运行,我想解决这个问题,但我不知道如何解决。

代码如下:

#include <iostream>
//#include <conio.h>
#include <iomanip>
#include <limits>
//#include <ncurses.h>

using namespace std;

int main()
{
    string formula;
    float a;
    float b;
    float c;
    float cantidad1;
    float cantidad2;
    float intervalo;
    intervalo=1;
    string signo;
    cout << "Formula: y=ab+/-c\n";
    cout << "Introduce el valor de a\n";
    cin >> a;
    //cout << "Introduce el valor de b\n";
    //cin >> b;
    cout << "Introduce el valor de c\n";
    cin >> c;
    cout << "Es suma o resta (responde con + o -)\n";
    cin >> signo;
    cout << "Del:";
    cin >> cantidad1;
    cout << "Al:";
    cin >> cantidad2;
    cout << "Intervalo:";
    cin >> intervalo;
    cout << "x|y\n";
    cout << "----\n";

    b=cantidad1;
    while(cantidad1 <= cantidad2){
        float res1 = 0;
        if(signo=="-"){
            res1 = a*b-c;
            b=b+intervalo;
            cantidad1= cantidad1+intervalo;
        };
        if(signo=="+"){
            res1 = a*b+c;
            b=b+intervalo;
            cantidad1= cantidad1+intervalo;
        };
        cout<< b << "|" << res1 << "\n";
    };
}

除此之外,我还想添加“按任意键继续”,但我尝试过的方法 getch() 不起作用。

【问题讨论】:

  • 请缩进并注释代码,以便您(和我们)可以看到您在做什么。
  • 您没有提供有用的信息。 “有小数点”是什么意思?你输入什么数据? “不添加”是什么意思?描述您期望的行为,并描述您观察到的行为有何不同。如果您描述不清楚,请不要依赖阅读您帖子的人能够猜出您的意图。
  • 完成了,我想,我只是解释了大部分代码
  • 指明你正在使用的输入文件。如果signo 没有给出+- 这将无限循环。
  • 为什么又要去掉缩进?

标签: c++


【解决方案1】:

可能是您输入的是逗号吗?如果是这样,请查看this answer

至于问题的最后一部分,this "Press any key to continue" answer 可能也有帮助。

【讨论】:

  • 是的,鉴于这似乎来自说西班牙语的国家,很可能需要逗号而不是小数点。
【解决方案2】:

问题很可能是无效字符潜入了您的信息流。这将导致设置错误位。在这些位被清除(使用ios::clear())之前,您将无法从流中读取。这看起来像是在一个无限循环中,输出提示,但跳过输入。

有关如何解决问题的更多信息,请参阅this answer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-01
    • 2021-12-08
    • 1970-01-01
    • 2021-12-13
    • 2013-10-31
    • 1970-01-01
    • 2015-09-01
    • 2018-02-02
    相关资源
    最近更新 更多