Why is the code giving the wrong result?
-
x = 0; y = -200; x = 0 * x + 1 * y y = -1 * x + 0 * y
According to my logic, I should get x = -200; y = 0. Why am I getting the result x = -200; y = 200? I am a complete newbie to JS and do not even know the basic features of the language syntax. Please tell me, I will be very grateful.JavaScript Felix Murphy, Nov 21, 2019 -
When something is not clear, just write down each step that happens in the program:
// запомнили в x значение 0
x = 0;
// запомнили в y значение -200
y = -200;
// тут выражение из нескольких действий
x = 0 * x + 1 * y
// 1. вместо переменных подставим значения
// 0 * 0 + 1 * -200
// 2. посчитаем умножения
// 0 + -200
// 3. посчитаем сложения
// -200
// запомним -200 в x
// на этом этапе у нас в x запомнено -200 и в y тоже -200
// с этим проделайте по аналогии
y = -1 * x + 0 * yAnonymous -
because your code is equivalent to this:
x = 0;
y = -200;
x = 1 * y; // 1*(-200)
y = -1 * x; // 1*(-200) ведь Х уже -200
do it like this
x = 0;
y = -200;
temp = x;
x = y; // -200)
y = -temp; // -0
better yet
x = 0;
y = -200;
[x,y]=[y,-x];Anonymous
2 Answers
Your Answer
To place the code, please use CodePen or similar tool. Thanks you!