无限制输入的c++计算器
C++ Calculator With Unlimited Inputs
嗨,我是c++语言的初学者,我想知道是否有任何方法可以编写无限输入的程序。我想写一个计算器程序来做加法。这很简单,但有没有一种方法可以让用户随心所欲地添加数字,而不会被问到他想要多少个数字。这样,如果他想加三个数字,他可以输入"1+1+1",或者如果他想加四个数字,他在前一行的末尾加上"+1"。这样,用户就不会被固定的输入数量所束缚,也就不需要问他想要多少个输入。我需要知道c++中的哪些函数才能做到
可以使用while循环从标准输入中读取数据。(std::cin)从while循环中读取并将输入添加到sum中的一些基本代码如下:
#include <iostream>
#include <string>
#include <cstdlib>
int main(){
std::string line = "";
double sum = 0.0;
while(line != "end"){
std::cout<<"The current sum is: "<<sum<<std::endl;
std::cout<<"Enter the number you would like to add or "end" to exit: ";
std::cin>>line;
sum += atof(line.c_str());
}
std::cout<<"The final sum is: "<<sum<<std::endl;
}
这将读取数字,直到它接收到输入"end"。
对于包含中缀操作符的表达式的解析和求值,没有什么比分流场算法更简单的了。
在c++中实现这一点与其他提供堆栈和队列的容器库(或内置支持)的语言几乎没有什么不同。这里,你要用std::stack
和std::queue
。程序的输入可以是一行(包含用户键入的表达式),从std::cin
(标准输入,或控制台)读取到std::string
。
这不仅允许任何合理长度的表达式,而且还可以正确处理任意嵌套的带括号的子表达式、特殊函数的求值和自定义操作符。
是。这是可能的。您可以使用vector
或int
s。获取用户输入并计算vector
中元素的和。把这个放到循环中,这就是你想要的。
try this:
#include <iostream>
int main (int argc, char *argv[])
{
for (int i = 0; i < argc; i++)
std::cout << "argument " << i << " is " << argv[i] << std::endl;
return 0;
}
相关文章:
- 使用 BMI 计算器对C++中的数字进行四舍五入的问题
- 我在c ++矩阵计算器程序中找不到错误
- C++计算器,不能单独除以 0
- 如何正确解析子字符串,以便它们对我的新手计算器有效?
- Arduino 基础 2 计算器无法C++工作
- 需要有关我的平均计算器代码的建议
- C++ - 在我尝试制作一个简单的计算器时有一个"uninitialized local variable y used"警告
- 野牛/flex:计算器将双精度值解释为整数,所以我添加了 YYSTYPE 双精度 #define 但我有多个编译错误
- C++计算器运算符
- 使用WIN32 API的击球平均计算器
- RPN计算器c++错误处理和多个运算符
- C++查找用于构建单行计算器
- 如何修复这个基本计算器
- 用于加法和减法的十六进制计算器
- 桌面计算器出现问题.C++程序设计语言
- 如何对堆栈中的所有项目求和?Postfix计算器
- RPN计算器使用头文件进行计算操作和堆栈;用于堆栈的矢量
- 如何在我的基本计算器中循环遍历数组
- 如果 GPA 计算器的语句问题
- 我的C++计算器似乎出了什么问题?