尝试在C ++中打印树(不使用x)

时间:2019-01-22 00:13:17

标签: visual-c++

我正在尝试使用C ++打印树。我只能使用“ /”来打印树,但是如果需要的话,我需要在树的两边同时使用“ /”和“ \”。我只需要用3个“ for”循环来制作“树的圆锥部分”。

我对底座和后备箱很满意,但在锥盆方面我需要帮助。

我知道我需要考虑圆锥体每一侧和圆锥体每一侧内部的空白空间,但是我尝试的所有内容都将其弄乱了,而且像我一样新,我很难过将其保持在3个“ for”循环中。另外,我的老师看不起使用互联网作为学习资源,因此该程序的“ for”循环之外的任何东西都带有红色标志。任何帮助表示赞赏。

<form method="post" action="/path/to/resource">
  <input type="hidden" name="_method" value="PUT">
  --- OR ---
  <input type="hidden" name="_method" value="PATCH">
  ...

1 个答案:

答案 0 :(得分:0)

对于其他任何使用此功能的人,这就是我的操作方式。这很丑陋,可能是错误的,但是它可以工作。

#include <iostream> 
using namespace std;

int main()
{
    cout << "Please enter a height for the cone of the tree. [3 - 15]: ";
    int height;
    cin >> height;

if(height < 3 || height > 15)
{
    cout << "ERROR: Value entered is out of bounds." << endl;
    system("pause");
    exit(0);
}

int level = 0;
int space = 0;
int base = 0;
int trunk = 0;

for (int level = 0; level < height; level++)
{   
    for (int space = height - level - 1; space > 0; space--)
        cout << ' ';
        cout << '/';
    for (int space = 0; space < (2 * level); space++)
        cout << ' ';
        cout << '\\';
        cout << endl;
}
for (int base = 0; base < 2 * height; base++)
    cout << '-';
    cout << endl;
for (int trunk = 0; trunk < (height / 2); trunk++)
{
    for( int trunk = 0; trunk < height - 1; trunk++)
        cout << ' ';
        cout << '|' << '|';
        cout << endl;
}

//system ("pause");
return 0;
}