Нужна помощь с выводом пользовательской формы в ConsoleApplication - C # - PullRequest
0 голосов
/ 07 июня 2010

У меня есть эта форма, и я хочу вывести ее в ConoleApplication Windows.

альтернативный текст http://i50.tinypic.com/25a4v4p.png

У меня есть этот код, но он не работает так, как мне нужно:

int i,j;

for(i=0;i<5;i++)

{

for(j=5-i;j>0;j--)

Console.WriteLine(" ");

for(j=0;j<=2*i;j++)

Console.WriteLine("*");

Console.WriteLine("\n");

}

Заранее спасибо.

РЕДАКТИРОВАТЬ: мне очень жаль

Ответы [ 3 ]

3 голосов
/ 07 июня 2010

Как все знают, все просто работает и торгует; при использовании LINQ ... так, вы пытались сделать это с помощью LINQ?

int n = 6;

var result = string.Join("\r\n", from i in Enumerable.Range(1, n)
                                 where i != 2
                                 let stars = Enumerable.Repeat('*', i)
                                 let indent = new string(' ', n - i)
                                 select indent + string.Join(" ", stars));

Console.WriteLine(result);
     *
   * * *
  * * * *
 * * * * *
* * * * * *
1 голос
/ 07 июня 2010

Что-то вроде:

            for (j = 0; j <= 2 * i; j += 2)
            {
                printf("*");
                printf(" ");
                // or Console.Write("* ") if we are talking C#
            }

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

0 голосов
/ 07 июня 2010

Вы только что использовали WriteLine вместо Write

Вот правильный код:

    int i, j;

    for (i = 0; i < 5; i++)
    {

        for (j = 5 - i; j > 0; j--)
            Console.Write(" ");

        for (j = 0; j <= 2 * i; j++)
            Console.Write("*");

        Console.WriteLine();

    }
...