简体   繁体   English

使用 For 循环或 If 语句在 C++ 中的右侧(相反侧)打印星形(*)三角形的程序

[英]Program to print Star(*) triangle on Right Side(Opposite Side) in C++ using For Loop or If Statement

I have a task to complete the task is to print Star(*)Triangle on right side in C++ using For Loop/if statement i write program but it give output like this.我有一个完成任务的任务是使用 For Loop/if 语句在 C++ 中的右侧打印 Star(*)Triangle 我编写程序,但它给出了这样的输出。

在此处输入图片说明

But i want to output like this.但我想这样输出。

**********
 *********
  ********
   *******
    ******
     *****
      ****
       ***
        **
         *

So, please help or tell me by making what changes in my code i can print triangle like this.因此,请通过在我的代码中进行哪些更改来帮助或告诉我,我可以像这样打印三角形。

//Program to print triangle on Right Side. //程序在右侧打印三角形。

#include <iostream>
#include <conio.h>
using namespace std;
int main()
{int number, i,j;
 cout << "Enter the Number :";
 cin >> number;

 for (i=number; i>=1; i--)
 {
 for (j=1; j<=i; j++)
 {
     if (j==1 || j==i || i==number)
     {
        cout << "*";
     }
     else
     {
         cout << " ";
     }
 }
    cout << endl;
 }
 getch();
 return 0;
 }

I think that may be some changing in if statement can generate triangle that i want but i am unable to do give me some advice so i can solve this.我认为这可能是 if 语句中的一些变化可以生成我想要的三角形,但我无法给我一些建议,所以我可以解决这个问题。

Solution解决方案

#include<iostream>
using namespace std;

int main()
{
    int i, j, k,number;
    cin>>number;
    for(i=number;i>=1;i--)
    {
        for(j=number;j>i;j--)
        {
            cout << " ";
        }
        for(k=1;k<=i;k++)
        {
            cout << "*";            
        }
        cout <<endl;        
    }
    return 0;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM