我正在编写一个数论证明程序,但我在编写代码方面的经验很少。
我想做的是显示公式的所有结果:
Answer = sqrt [4*n]
在哪里; n = 1,2,3,4,5,6,7,...50
但我想在 2 组列中显示结果,即
- 我希望第 1 列是 n 的前半部分。因此,由于有 50 次迭代,第一列将包含数字 0 --> 25。
- 第二列应显示等式中的前 25 个答案。
- 第 3 列是 n 的后半部分。即,数字 26-->50
- 第 4 列应显示 n 的最后 25 个值的结果。
下面是我要显示的示例*:
*(忽略下面示例中的点,它们仅用于显示目的)
n:......答案:..........n:......答案:
到目前为止,我的代码可以正常工作,但我只是想不出如何拆分和显示 n 值和答案值,如上所示。 我所能做的就是仅在 2 列中显示值,如下所示:
n:......答案:
这是我目前所得到的:
#include <iostream>
#include <iomanip>
#include <cmath> //preprocesser directives
using namespace std; //avoids having to use std:: with cout/cin
int main (int argc, char* argv[])
{
int n;
float Ans;
cout << setw(4) << "n:" << "\t\t" << setw(4) << "Answer:" << "\n" << endl;
for (int n = 0; n<=50; n++)
{
Ans = sqrt ((4)*(n));
cout << setw(4) << n << "\t\t" << setprecision(4) << setw(4) << Ans << endl;
}
cout << "\n\nPress enter to end" << endl;
cin.get();
}
我真的不知道如何将它分成 4 个单独的列,但我知道\t 函数一定与它有关!??
感谢任何帮助! 谢谢
最佳答案
将您的 for 循环更改为:
for (int n = 1; n<=25; n++)
{
Ans = sqrt ((4)*(n));
cout << setw(4) << n << "\t\t" << setprecision(4) << setw(4) << Ans << "\t\t";
Ans = sqrt ((4)*(n + 25));
cout << setw(4) << n + 25 << "\t\t" << setprecision(4) << setw(4) << Ans << endl;
}
关于c++ - 如何在 C++ 中的单独列中显示结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22567696/