星星練習題

星星練習題

其實在學習撰寫程式語言的過程中,多少都會出現這種練習題。

我個人認為這些題目,最主要的目地還是訓練程式人員演算法的思考邏輯。

半路出家說實在要把每本經都唸完,難度實在太高,更何況是這些基礎中的基礎練習(這下好了吧!出槌嚕)。

昨天面試到最後階段,正想說一切順利準備快閃的時候,面試官突然拿起筆紙OOXX,要我把答案寫出來...

在沒IDE工具幫忙下,要寫出答案>__<!!,對我來說實在難度頗高....

果不其然還是打槍了~~(遠目!!這樣一直搞笑下去也不是辦法)

不過沒關係,正所謂不經一事不長一智,既然遇到也沒寫出來,回家當然要努力點把解答弄出來。

題目:

請組出下列圖示,其中的長度,把它提為參數!!

*

**

***

****

***

**

*

以下是我的解法,雖然解的很醜><...

 

   1:  namespace StarTrain
   2:  {
   3:      class Program
   4:      {
   5:          static void Main(string[] args)
   6:          {
   7:              int starCount = 10;
   8:              PaintStar paintStar = new PaintStar();
   9:              paintStar.DoWork(starCount);
  10:   
  11:              Console.Read();
  12:          }
  13:      }
  14:   
  15:      public class PaintStar
  16:      {
  17:          public void DoWork(int count)
  18:          {
  19:              for (int i = 0; i < count; i++)
  20:              {
  21:                  for (int j = 0; j <= i; j++) //就是這個 j<=i 讓我卡好久>_< 
  22:                  {
  23:                      System.Console.Write("*");
  24:                  }
  25:                  System.Console.WriteLine();
  26:              }
  27:   
  28:              for (int i = 0; i < count-1; i++)
  29:              {
  30:                  for (int j = count-2; i <= j; j--)
  31:                  {
  32:                      System.Console.Write("*");
  33:                  }
  34:                  System.Console.WriteLine();
  35:              }
  36:          }
  37:      }
  38:  }

可能網路上有更好的解法,不過我沒上網找了,有興趣的朋友可以上良葛格網站找找。