Кода представен по долу, служи за нарисуването на пясъчен часовник на конзолата, като празното пространство се запълва с ".", а самият часовник с"*". При зададен размер (например 10) тя автоматично го нарисува на екрана.
Задачата е разделена на две части. Часовника се представя като два триъгълника, които се нарисуват чрез вложени цикли. За първият триъгълник се използва цикъл, който увеличава точките на ред, а вложеният в него втори цикъл намалява звездичките. За другият триъгълник се използва пак цикъл, но той намалява точките на ред,а вложеният в него втори цикъл увеличава звездичките. Така двата триъгълника стават огледални и изглеждат като пясъчен часовник. Големината на нарисуваният часовник зависи от въведеното от потребителя число на конзолата (броя редове).
Задачата е разделена на две части. Часовника се представя като два триъгълника, които се нарисуват чрез вложени цикли. За първият триъгълник се използва цикъл, който увеличава точките на ред, а вложеният в него втори цикъл намалява звездичките. За другият триъгълник се използва пак цикъл, но той намалява точките на ред,а вложеният в него втори цикъл увеличава звездичките. Така двата триъгълника стават огледални и изглеждат като пясъчен часовник. Големината на нарисуваният часовник зависи от въведеното от потребителя число на конзолата (броя редове).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
using System.Linq; | |
using System.Text; | |
namespace ConsoleApplication | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
string Line = Console.ReadLine(); | |
int n = int.Parse(Line); | |
for (int i = 1; i <= n; i++) | |
{ | |
if (i % 2 != 0) | |
{ | |
for (int j = 1; 2*j < i; j++) | |
{ | |
Console.Write("."); | |
} | |
Console.Write("*"); | |
for (int j = i; j < n; j++) | |
{ | |
Console.Write("*"); | |
} | |
for (int j = 1; 2 * j < i; j++) | |
{ | |
Console.Write("."); | |
} | |
Console.WriteLine(); | |
} | |
} | |
for (int i = n - 1; i > 0; i--) | |
{ | |
if (i % 2 != 0) | |
{ | |
for (int j = 1; 2*j < i; j++) | |
{ | |
Console.Write("."); | |
} | |
Console.Write("*"); | |
for (int j = i; j < n; j++) | |
{ | |
Console.Write("*"); | |
} | |
for (int j = 1; 2 * j < i; j++) | |
{ | |
Console.Write("."); | |
} | |
Console.WriteLine(); | |
} | |
} | |
} | |
} | |
} | |
No comments:
Post a Comment