为项目制作AI程序。无法识别用户输入

我需要创建一个与用户互动并根据用户输入做出响应的AI程序。我在这方面经验不多,已经花了几个小时了,哈哈。我在网上查了一些资料,但我想我应该发布我的代码,看看能不能得到一些帮助/建议。

基本上,这个AI是用来帮助数学的。我已经让程序自我介绍并询问用户需要帮助的地方,但当我输入“加法”、“减法”等时,它只是输出数字,而应该回应“太好了,我会帮助你进行加法!/(或者用户输入的任何内容)”

程序首次运行的截图:http://prntscr.com/elw7b4输入用户需要帮助的内容后的截图:http://prntscr.com/elw7ky(显然目前有点混乱,我先做了计算器,所以它会给出额外的结果。)

在输入以下代码之前,计算器是可以工作的:(如你所见 http:// prntscr.com /elwavs 只有两个链接,因为我的声望值不足10)

void Inpsum(){cout << "Hello, my name is Eva! I am able to help you with basic Maths! How may I be of Assistance today?" << endl;float inpsum;cin >> inpsum;cout << "Great!, I will help you with " << (inpsum) << endl;}

但是输入上述代码后,计算器就坏了。

这是完整的代码:

#include <iostream>#include <cstdlib>#include <cmath>#include <iomanip>using namespace std;//user inputs what he needs help with/program outputvoid Inpsum(){   cout << "Hello, my name is Eva! I am able to help you with basic Maths! How may I be of Assistance today?" << endl;cin >> inpsum;cout << "Great!, I will help you with " << (inpsum) << endl;}//addition functionvoid Add() {float add1, add2;cout << "Please enter two values you want added together" << endl;cin >> add1;cin >> add2;cout << "The answer is: " << (add1 + add2) << endl;}//subtraction functionvoid Subt() {float subt1, subt2;cout << "Please enter two values you want subtracted" << endl;cin >> subt1;cin >> subt2;cout << "The answer is: " << (subt1 - subt2) << endl;}//division functionvoid Div(){    float div1, div2;    cout << "Please enter two values you want divided" << endl;    cin >> div1;    cin >> div2;    cout << "The answer is: " << (div1 / div2) << endl;}//multiplication functionvoid Mult() {float mult1, mult2;cout << "Please enter two values you want multiplacted" << endl;cin >> mult1;cin >> mult2;cout << "The answer is: " << (mult1 * mult2) << endl;}int main(){Inpsum(); //user inputs what they want help withAdd();Subt();Div();Mult();    return 0 ; }

基本上 – 我已经设置好了计算器,它原本是可以工作的。但是在尝试实现用户与程序之间的输入和输出时,我犯了错误,导致一切都坏了。程序没有说“太好了,我会帮助你进行加法”,而是说“太好了,我会帮助你进行 -134567432”

我不是要求别人帮我做,而是希望有人能指引我正确的方向,这样我以后就知道该怎么做了。


回答:

请注意,你使用 float inpsum; 来定义 inpsum,但你试图存储的是字符串或单词。它们是不兼容的。你可以了解更多关于C++中的数据类型和字符串的知识。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注