【发布时间】:2021-07-14 20:23:19
【问题描述】:
我们收到了一个作业中的问题。我在解释它时遇到了麻烦,所以我用相同的条件用 C++ 重写了它。但是,我似乎无法获得问题中列出的正确输出。有人可以告诉我如何进行吗?
这是问题的一个片段。
这是我的代码:
#include <iostream>
#include <string>
using namespace std;
int main(){
int n; //AreWeThereYet
string a;
a="Yes we have arrived";
string b;
b="We just left";
string c;
c="That was annoying";
string d;
d="Almost";
int i;
cout << "enter n" << endl;
cin >> n;
for(int i=0;i<=n;i++){
//here starts the calc
if(n==0){
cout << a << endl;
return 0;
}
if(n>5){
cout << b << endl;
n=(n-1);
}else if(n>1){
n=(n-2);
cout << c << endl;
}else{
cout << d << endl;
n=(n-1);
}
}
}
循环似乎无法输出第一个和最后一个问题。
我想如果我复制这个问题,我可以通过反复试验来获得我需要的答案。 下面我附上了我的输出图像。我希望输入“1”会输出“几乎”,然后是“是的,我们已经到达”。
【问题讨论】:
-
在未使用循环的问题中,正在递归调用函数。
-
所有必要的信息都应该直接在问题中。请包括预期和实际的输出和输入
-
您链接的图像要求为所示代码的给定输出确定
n。您的代码似乎试图复制图像中的代码,而不是尝试为给定的输出复制其输入 -
@largest_prime_is_463035818 我对堆栈溢出和计算机科学也很陌生。我还不确定如何设置代码来复制输入。我将尝试添加图像以在终端中显示我的输出。你能帮我解决不和吗?如果没有,那么没问题。
-
这个不用写代码就可以回答。可以肯定的是,编写代码不会受到伤害。但能够通过它进行推理是一个想法,也是更好的实践。
标签: c++ loops conditional-statements