Забавни пробни програмки.
Здр. на всички. Аз съм новичък в програмирането и със знанията които имам се опитвам да правя някакви неща. Както всеки начинаещ програмите ми ще са тотална бъркотия и ще се случват всякакви забавни и интересни резултати :D
Та искам да направя безкраен цикъл, почнах да пиша разни кодове докато не стигнах до този вариант:
using System;
namespace Problem17PlayWithTheDebuggerInVisualStudio
{
class Program
{
static void Main()
{
for (int i = 1; i < 1000; i++)
{
if (i == 999)
{
Console.WriteLine(i);
}
string b = "yo";
Console.WriteLine(b);
}
}
}
}
Резултата от програмата е:
На мен лично ми стана много забавно след като видях резултата понеже очаквах всичките числа до 999 и след това да се изпише "yo". Все пак от резултата на програмата научих нещо ново ( поне така си мисля ). Ако някой може да обясни защо се случва точно това и примерно как да се предпазим от подобни резултати може да пише един коментар.
Случвало ли ви се е да направите някаква подобна програмка ( от която да сте очаквали един резултат а да се е получил съвсем друг и до някъде забавен? Ако да и имате желание да покажете напишете един коментар :)
П.п. Знам че можеби съм тръгнал в абсолютно грешна посока и с if, else, for, няма да мога да напиша безкраен цикъл. Оставете ме да си бия главата как ще успея да направя нещо подобно. И да искам да напиша такава програма просто защото искам да видя какво ще стане. Правил съм подобни опити с конзолата на firefox резултата бе че крашна браузъра. Чудно ми е да видя какво ще стане с компютър :D
--------------
Редакция: Сетих се как става някакъв безкраен цикъл. Трябваше да променя
for (int i = 1; i < 1000; i++)
на
for (int i = 1; i >0; i++)
:D
-------------
Редакция 2: Та имаме си безкраен цикъл дет си върти едни числа
Заема 1,128к :D и не мърда :)
Е добре, щом имам проверка след итерация не би ли следвало да принтира 999, yo, 999, yo, 999, и тнт ?
П.п. Задавам въпроси от любопитство и се опитвам да разбера как работи.
променливата i се променя на всяка итерация, увеличава се със едно
тя започва със стойност 1
проверката ти казва: когато i е равно на 999 само тогава изпълни кода в следващата двойка скоби ( {..} )
в този случай i се принтира само когато е равно на 999 и затова имаш само един път 999
докато следващия ред, който е извън if-а казва само да изпринтиш стринга "yo"
което се изпълнява на всяка итерация
Кода ти работи по този начин. Започва цикъла, проверява се дали променливата i == на 999, ако е равна се изписва, ако не е равна се пропуска изписването на i, след това се изписва стринга "yo" и този процес започва отначало само че i вече е с по-голяма стойност
За да се получи това което си искал трябва да си написал:
А за безкраен цикъл ти трябва while(true) { ... }