Loading...
Kristianchooy avatar Kristianchooy 59 Точки

[ЗАДАЧА] ЗНАК СТОП

Здравейте ! 

Значи , имам проблем с долната част , горната се печата без проблем , но дойде ли момента до долната част , направо прави една проверка в for-а и дава false( не знам защо при положение че брояча е по малък от n и съм дал да се увеличава докато е true ..) пробвах го с debuggera и от там видях че не ми влиза в тялотo на 2рият for цикъл .. Въпроса ми е защо не влиза в 2рият for цикъл ? Само това не ми е ясно , другото е ок  за алгоритмите съм измислил :) 

Ето кода : http://pastebin.com/Yr50bdjx

 

Тагове:
0
Programming Basics
skinwalker avatar skinwalker 21 Точки
Best Answer

Преди втория for цикъл n ти е 0, а цикълът започва от 1, за това не се изпълява нищо в него.

Edit : Това ти е fix на кода : http://pastebin.com/LrsmZsNx

0
14/07/2016 13:11:30
Kristianchooy avatar Kristianchooy 59 Точки

Благодаря ти , а това ReadKey какво е ?

0
skinwalker avatar skinwalker 21 Точки

Конзолата ми се затваря автоматично, след като изпълня даден код, даже не мога да видя резултата толкова бързо се затваря, това Console.ReadKey(); изчаква натискането на бутон и тогава я затваря, ако го използваш го махни преди да сложиш кода в judge, защото ще ти даде 0/100, fix-a дето ти пратих дава иначе 100/100

0
Kristianchooy avatar Kristianchooy 59 Точки

да , тествах го 100/100 е :) супер е и това много ми хареса че си се досетил var temp = n , аз не успях да се сетя сам , благодаря и евала :) 

0
heilin90 avatar heilin90 69 Точки

С това  Console.Write(new string('.', n--)); ти намаляш стойността на n и вече при втория цикъл n=0 и не се влиза в него. Пробвай вместо n--  да използваш нещо друго примерно.  Ако искаш виж моето решение - http://pastebin.com/YET6u8N0

0
14/07/2016 13:15:48
dilqna9 avatar dilqna9 44 Точки

Това е кода, който принтира долната част на знака.

for (int i = n; i >= 1; i--)
            {
                Console.Write(new string('.', n - i));
                Console.Write("\\\\");
                Console.Write(new string('_', n * 2 + i * 2 - 1));
                Console.Write("//");
                Console.Write(new string('.', n - i));
                Console.WriteLine();
            }

0
esend3 avatar esend3 8 Точки

Друго решение :

http://pastebin.com/fYiekAZU

0
vancho avatar vancho 430 Точки

Явно n e по-малко от 1! И за това не влиза. Мисля че е по-правилно да си направиш друга променлива, която да ти е равна на n. И така после като ти трябва n ще го използваш, а не да го променяш него директно.

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