Loading...
Riggs avatar Riggs 19 Точки

Задача относно отпечатване на квадрат от звездички след въведено число

Здравейте. Успях да реша следната задача успешно: "Да се напише C# конзолна програма, която прочита от конзолата цяло положително число N и отпечатва на конзолата квадрат от N звездички, като примерите по-долу."

Кодът, който използвах е https://pastebin.com/aZQEbSU8. Изрисува се квадратът коректно - http://prikachi.com/images.php?images/672/9590672j.png.

Когато обаче реша да експериментирам за себе си (да изляза извън условието на задачата) и искам да направя вътрешните звездички на квадрата 2,3 или повече, а не 1 (както е по условие). Променям  "Console.WriteLine("*{0}*", new string(' ', n - 2));" на  Console.WriteLine("**{0}**", new string(' ', n - 2)); Кодът отново работи и изрисува квадрат, но разстоянието между първият и последният ред на квадрата, и тези редове между тях се нарушава. 

Това, което се отпечатва в конзолата: http://prikachi.com/images.php?images/670/9590670T.png
Това, което искам да постигна: http://prikachi.com/images.php?images/673/9590673x.png

И колкото повече увеличавам броя на звездичките, толкова повече се увеличава и разликата/разстоянието. Иначе кодът си работи без грешка, но не мога да намеря начин да изрисувам квадрата с повече от 1 звезда коректно. Търся в google от 3-4 дена и не мога да открия каква трябва да е правилната формулировка на кода. Не успявам да се сетя и за друг вариант, освен да редактирам звездичките около placeholder-a. Ако някой знае  по какъв начин трябва да преправя кодът, за да не се получава това разстояние, а да се изрисува правилно квадрата, ще съм му много благодарен ако го сподели с мен. 
Благодаря предварително. 

Тагове:
0
Programming Basics with C#
Riggs avatar Riggs 19 Точки

Точно това, което търсех като резултат. Хиляди благодарности. А има ли начин това да стане само с един входен параметър или са необходими повече (както е в примера, който използвахте - 2)? :) Питам от любопитство, понеже съм начинаещ :)  Отново изказвам благодарност.

0
17/06/2019 17:00:48
knoteva avatar knoteva 1081 Точки

Ами, според мен ако е само с един вход може да хардкоднеш колкото звезди искаш или входът да се подава като масив: например 10 2(и след това да сплитваш), или да ги генерираш на рандом принцип. Ако ти е интерсно, по-късно мога да направя примери, но май трябва да се направят и допълнителна проверка за n и страничните звездички. Например при n = 10 или 15, страничните звездички не трябва да са повече от n / 2(5/7).

1
17/06/2019 17:53:11
Riggs avatar Riggs 19 Точки

Много Ви благодаря за отделеното време :)

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.