首页 > 解决方案 > 如何解决这个超级难的创星难题?

问题描述

我应该从第一行开始创建星星,直到它们与数字相同。然后从那里他们会减少,直到剩下的星星只有一颗!

#include<iostream>
    
using namespace std;

int main()
{
    float number;
    int i, j, k, m, n, control1 = 0, control2 = 0;
    cout << "Please enter a number: ";
    cin >> number;
    
    for(i = 0;i <= (number/2) + 2; ++i)
    {
        cout << "\n";
        for(j = 0;j < control1; j++) //tengoh
        {
            cout << "*";

        }
        control1 += 1;
    }
    control2 = control1;
    for(m = 0;m < number; ++m)
    {
        cout << "\n";

    for(n = (control1 - 1);n < control2; n++)
        {
            cout << "*";
        }
        control2 += 1;
    }
    return 0;
}

标签: c++

解决方案


#include <iostream>
using namespace std;

int main()
{
    int number, i = 1;
    std::cin >> number;

    while (i <= number)
    {
        for (int j = 1; j <= i; j++)
            std::cout<< "*";
    
        std::cout << std::endl;
        i++;
    }

    number -= 1;
    
    while (number > 0)
    {
        for (int j = number; j > 0; j--)
            std::cout << "*";
    
        std::cout << std::endl;
        number--;
    }
    return 0;
}

推荐阅读