private void button4_Click(object sender, EventArgs e)
{
int result = 0; // Создаем переменную result и присваиваем ей значение 0
int x = 6; // Создаем числовую переменную x и присваиваем ей значение 6
while (x > 3) {
// Создаем цикл While (пока), и задаем ей условие: пока x больше 3, к переменной result прибавляем x
result = result + x;
// result будет равен 6, отнимаем от х - 1
x = x - 1;
}
for (int z = 1; z < 3; z = z + 1) { // Создаем числовое условие for к переменной z, и пока z < 3, прибавляем ей по 1 единице
result = result + z; // К переменной result прибавляем результат полученный из условия переменной z
}
MessageBox.Show("Результат равен " + result); // Выводим общий результат вычислений в качестве переменной result
}
В ответе, у переменной выводиться как result = 18. Почему?
Если у нас в цикле while условие будет соблюдаться пока x > 3, значит когда x < 3 или x = 3 условие перестанет соблюдаться. Следовательно переменная x (x = 6), может отдать переменной result только 3 единицы (т.к дальше уже будет не будет x > 3). Значит result + x = 3 (result изначально = 0)
Потом result + for (i) = 6 (3 + 3 = 6 по условиям цикла for). В ответе должно получиться значение 6. Так откуда вообще 18? Я не могу понять логику работы цикла while.
Я только начинаю изучать C#, сильно не пинайте. Спасибо за внимание.