Advertisement
ivanov_ivan

HW15.MagicWand

May 26th, 2018
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.48 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace HW15.MagicWand
  8.     {
  9.     class MagicWand
  10.         {
  11.         static void Main()
  12.             {
  13.             int n = int.Parse(Console.ReadLine());
  14.             string firstLine = new string('.', n + n / 2);
  15.             Console.WriteLine("{0}.*.{0}",firstLine);
  16.             //top
  17.             for (int i = n - n/2; i > 0; i--)
  18.                 {
  19.                 string nextLinesPoints = new string('.', n + i - 1);
  20.                 string nextLinesAsteriks = new string('.', 3*n - (n + i - 1 )* 2);
  21.                 Console.WriteLine("{0}*{1}*{0}",nextLinesPoints,nextLinesAsteriks);
  22.                 }
  23.             string devideLineAster = new string('*', n);
  24.             string devideLinePoints = new string('.', n + 2);
  25.             Console.WriteLine("{0}{1}{0}",devideLineAster,devideLinePoints);
  26.             // middle
  27.             for (int i = 1; i <= n/2; i++)
  28.                 {
  29.                 string nextLinesPoints = new string('.', i);
  30.                 string nextLinesInnerPoints = new string('.', 3 * n - 2 * i);
  31.                 Console.WriteLine("{0}*{1}*{0}",nextLinesPoints,nextLinesInnerPoints);
  32.                 }
  33.             for (int i = n/2; i > 0; i--)
  34.                 {
  35.                 string middlePairBegin = new string('.', i - 1);
  36.                 string middlePairAfter = new string('.', n / 2);
  37.                 string middlePairMiddle = new string('.', n);
  38.                 string middlePairEnd = new string('.', (n / 2) - i);
  39.                 Console.WriteLine("{0}*{1}*{3}*{2}*{3}*{1}*{0}",middlePairBegin,middlePairAfter, middlePairMiddle,middlePairEnd);
  40.                 }
  41.             string afterMiddleLineAsteriks = new string('*', n - n / 2);
  42.             string afterMiddleLinePoints = new string('.', n/2);
  43.             string afterMiddleCenterLinePoints = new string('.', n);
  44.             Console.WriteLine("{0}{1}*{2}*{1}{0}",afterMiddleLineAsteriks,afterMiddleLinePoints,afterMiddleCenterLinePoints);
  45.             //bottom
  46.             for (int i = 0; i < n; i++)
  47.                 {
  48.                 string bottomPoints = new string('.', n);
  49.                 Console.WriteLine("{0}*{0}*{0}",bottomPoints);
  50.                 }
  51.             //end
  52.             string endPoints = new string('.', n);
  53.             string endAsteriks = new string('*', n);
  54.             Console.WriteLine("{0}*{1}*{0}",endPoints,endAsteriks);
  55.  
  56.             }
  57.         }
  58.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement