Почему в примере инкремент вычитается именно так - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте!
int a = 10, b = 3;
int t = (a++) - b;
b += t * a;
Console.WriteLine("{0} {1}", t, b);
Почему результат будет 7 и 80? Я понял присваивание. Но тогда должно получиться так: t будет равно 10 - 3. Это ясно, так как инкремент постфиксный и a остаётся десятью. Но вот b+=t*a должно так получиться: b = b + (t*a) 3+70 Это никак не 80. Объясните пожалуйста. Или действие с b происходит когда уже a будет 11? Тогда сходится! Но только почему в первом действии a=10, а во-втором a=11? А?

Решение задачи: «Почему в примере инкремент вычитается именно так»

textual
Листинг программы
int a = 10, b = 3;//  a==10
int t = (a++) - b;//a==10  t==7
b += t * a;//a==11

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

8   голосов , оценка 3.75 из 5
Похожие ответы