PowerShell пирамида - PullRequest
       1

PowerShell пирамида

0 голосов
/ 26 апреля 2018

Я новичок в этом, поэтому просьбы не обижаться на этот вопрос. Мне нужно написать программу PowerShell, в которой пользователь вводит число, и программа рисует пирамиду *. Поэтому, если пользователь вводит 5, программа отображает:

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

Пока мне удалось сделать только правую часть пирамиды. Это код.

$x = [int] (Read-Host "Write number")
for($i=1; $i -le $x; $i++) {
    for($k=1; $k -le $x; $k++ ){
        Write-Host -NoNewLine " "
    }
    for($j=1; $j -le 2 * $i - 1; $j++) {
        Write-Host -NoNewLine "*"
    }
    Write-Host " "
}

И это отображает:

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

Я не нашел ничего похожего в интернете, так что, если кто-нибудь может мне помочь, пожалуйста. Заранее спасибо.

1 Ответ

0 голосов
/ 26 апреля 2018

С кодом, написанным с использованием 5 в качестве ввода, вы печатаете каждую строку с 5 пробелами перед ней.

Если вы измените свой код на это:

$x = [int] (Read-Host "Write number") 
for($i=1; $i -le $x; $i++){ 
   #changed -le $x to -le $x - $i
   for($k=1; $k -le $x -$i; $k++ ){
      Write-Host -NoNewLine " "
   }

   for($j=1; $j -le 2 * $i - 1; $j++){ 
     Write-Host -NoNewLine "*" 
   }

   Write-Host " "
}

Тогда вывод при вводе 5 будет:

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

То, что я верю, то, что вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...