2015-09-29 9 views
5

मैं सी # में नौसिखिया हूँ और मैं मदद का अनुरोध कारण मुझे इस लागू करने के लिए: इस कोडसी # क्रिसमस ट्री

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

मैं सिर्फ था:

class Program 
{ 
    static void Main(string[] args) 
    { 
     AnotherTriangle ob = new AnotherTriangle(); 
     ob.CreateTriangle(); 

     Console.ReadLine(); 
    } 
} 
class AnotherTriangle 
{ 
    int n; 
    string result = "*"; 
    public void CreateTriangle() 
    { 
    flag1: 
     Console.Write("Please enter number of triangles of your tree: "); 
     n = int.Parse(Console.ReadLine()); 
     Console.WriteLine(); 
     if (n <= 0) 
     { 
      Console.WriteLine("Wrong data type\n"); goto flag1; 
     } 
     string s = "*".PadLeft(n); 
     for (int i = 0; i < n; i++) 
     { 
      Console.WriteLine(s); 
      s = s.Substring(1) + "**"; 
      for (int j = 0; j < n; j++) 
      { 
       Console.WriteLine(s); 
      } 
     } 
    } 
} 

अब मैं केवल "टॉवर" है पर , समतुल्य त्रिकोण नहीं। कृपया मदद करे।

+2

कृपया, जब आप यह काम कर रहा हो, का उपयोग करते हुए इस पर गौर [ 'TryParse'] (https://msdn.microsoft.com/en-us/library/f02979c7%28v=vs। 110% 29.aspx) और सवाल है कि आप 'goto' – Sayse

+1

' goto' का उपयोग क्यों कर रहे हैं? वास्तव में? मैं सराहना करता हूं कि आप एक नौसिखिया हैं, लेकिन कृपया फिर कभी 'गोटो' का उपयोग न करें। यह आपको "खराब डेवलपर" पथ का नेतृत्व करेगा और यह बचने का एक कठिन मार्ग हो सकता है। –

+1

'गोटो 'के बारे में पढ़ें: [गोटो-इज़-द-बैड] (http://stackoverflow.com/questions/11906056/goto-is-this-bad) – Dbuggy

उत्तर

9
Console.WriteLine("Please enter the number of triangles in your tree: "); 
int n = int.Parse(Console.ReadLine()); 

for (int i = 1; i <= n; i++) 
{ 
    for (int j = 0; j < i; j++) 
    { 
     string branch = new String('*', j); 
     Console.WriteLine(branch.PadLeft(n + 3) + "*" + branch); 
    } 
} 

A working example.

+3

आकर्षक जवाब –

संबंधित मुद्दे