в то время как l oop инициализация значения c ++ - PullRequest
0 голосов
/ 04 августа 2020

пришлось сделать некоторое время l oop там значение y - одно положительное и одно отрицательное

мое решение было:

int main ()
{
  int x = 5;
  double y = 1;


  while (x < 10)
  {
      x++;
      y *=  -1;

      cout << y << " " ;
  }

, а решение моих друзей было:

 while (x < 10)
  {
      x++;
      y =  -y;

      cout << y << " " ;
  }

но я не понимаю, как «y = -y» может получить положительное значение на третьем выходе, может кто-нибудь, пожалуйста, объясните мне это!

thx

1 Ответ

1 голос
/ 04 августа 2020

Это так просто. Выражение y *= -1 равно эквивалентно выражению y = y * -1, которое эквивалентно выражению y = -1 * y, которое эквивалентно выражению y = -y. Эти эквивалентности являются предметом обозначений; здесь нет ничего важного.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...