public class DrawProgram20200531
char[,] display = new char[HEIGHT, WIDTH];
public static void Main()
new DrawProgram20200531().Run();
for(int x = -40; x <= 40; x+=5)
drawCircle(5, 0 + x, 0 + x);
drawCircle(5, 0 + x, 0 + -x);
drawCircle(5, 0 + x, 0 + x);
void drawClock(int hour, int minute)
int betaHour = 90 - hour * 30;
int betaMinute = 90 - minute * 6;
drawRay(0, 5, 0, 0, betaHour);
drawRay(0, 8, 0, 0, betaMinute);
for(int alfa = 0; alfa < 360; alfa += 30)
drawRay(10, 15 , 0, 0, alfa);
drawRay(10, 11 , 0, 0, alfa);
for(int beta = 0; beta < 360; beta += 5)
Console.WriteLine($"drawSun forgatas {beta} fok");
for(int alfa = 0; alfa < 360; alfa += 30)
drawRay(8, 10 , 0, 0, alfa + beta);
void drawRay(int radiusFrom, int radiusTo, int cx, int cy, int alfa)
double alfa1 = alfa * Math.PI / 180.0;
int x1 = (int)Math.Round(radiusFrom * Math.Cos(alfa1));
int y1 = (int)Math.Round(radiusFrom * Math.Sin(alfa1));
int x2 = (int)Math.Round(radiusTo * Math.Cos(alfa1));
int y2 = (int)Math.Round(radiusTo * Math.Sin(alfa1));
drawLine(cx + x1, cy + y1, cx + x2, cy + y2);
void clear(int waitingInMilliseconds)
Thread.Sleep(waitingInMilliseconds);
display = new char[HEIGHT, WIDTH];
if (x >= 0 && x < WIDTH && y >= 0 && y < HEIGHT)
void drawLine(int x1, int y1, int x2, int y2)
int xFrom = x1, yFrom = y1, xTo = x2, yTo = y2;
for (int y = yFrom; y <= yTo; y++)
for (int x = xFrom; x <= xTo; x++)
int y = (int)Math.Round((yTo - yFrom) / (double)(xTo - xFrom) * (x - xFrom) + yFrom);
void drawCircle(int radius, int cx, int cy)
for (int alfa = 0; alfa < 360; alfa += 2)
double alfa1 = alfa * Math.PI / 180.0;
int x = (int)Math.Round(radius * Math.Cos(alfa1));
int y = (int)Math.Round(radius * Math.Sin(alfa1));
void drawPolygon(int radius, int cx, int cy, int n, int beta)
for (int alfa = 0; alfa <= 360; alfa += 360 / n)
double alfa1 = alfa * Math.PI / 180.0;
double beta1 = beta * Math.PI / 180.0;
int x2 = (int)Math.Round(radius * Math.Cos(alfa1));
int y2 = (int)Math.Round(radius * Math.Sin(alfa1));
drawLine(x1, y1, x2, y2);
for (int x = -19; x < 20; x++)
int y = (int)Math.Round(Math.Sqrt(radius * radius - Math.Pow(x, 2)));
Console.WriteLine("drawParabola");
for (int x = -9; x < 10; x++)
Console.WriteLine("drawOlimpicEmblem");
drawCircle(radius, -2 * radius - 2, 0);
drawCircle(radius, 0, 0);
drawCircle(radius, 2 * radius + 2, 0);
drawCircle(radius, -radius - 1, -radius);
drawCircle(radius, radius + 1, -radius);
void drawCar(int x, int y)
drawLine(-WIDTH / 2, -3 + y, WIDTH / 2, -3 + y);
drawCircle(2, -6 + x, 0 + y);
drawCircle(2, 6 + x, 0 + y);
drawLine(-9 + x, y, -9 + x, 3 + y);
drawLine(-9 + x, 3 + y, -7 + x, 5 + y);
drawLine(-7 + x, 5 + y, 0 + x, 5 + y);
drawLine(0 + x, 5 + y, 2 + x, 3 + y);
drawLine(2 + x, 3 + y, 9 + x, 3 + y);
drawLine(9 + x, 3 + y, 9 + x, 0 + y);
drawLine(-2 + x, 0 + y, 2 + x, 0 + y);
int x1 = -finish, x2 = x1;
while(x1 < finish && x2 < finish)
if(new Random().NextDouble() > 0.5)
if(new Random().NextDouble() > 0.5)
Console.WriteLine("Racing and jumping cars, which is the WINNER?");
Console.WriteLine("Winner: UPPER");
Console.WriteLine("Winner: LOWER");
for (int y = 0; y < HEIGHT; y++)
for (int x = 0; x < WIDTH; x++)
Console.Write(display[y, x]);