Непонятная ошибка
Difference between ru1 and ru2, changed 94 character(s)
Добрый вечер! Решал одну задачу, наткнулся на такую ошибку:↵

~~~~~↵
ll n;↵
cin >> n;↵
ll fn = n;↵
......↵
ll a = n * (n + 1);↵
if (n != fn)↵
{↵
printf("ERROR!!");↵
}↵
if (n < 0)↵
{↵
printf("ERROR!!");↵
}↵
if (a < 0)↵
{↵
printf("ERROR!!");↵
}↵
~~~~~↵

<p>Опытным путем установил, что в первый if никогда не попадает программа, а во второй попадает. С чем это может быть связано?
 Переменная fn встречается 2 раза в коде.
`1 <= n <= 10^6`

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
ru4 Russian nicky_ua 2015-08-10 12:13:27 185
ru3 Russian nicky_ua 2015-08-09 23:11:43 208 Мелкая правка: '= 10^6`\nUPD: пр' -strongp
ru2 Russian nicky_ua 2015-08-09 23:02:28 94 Мелкая правка: 'аза в коде\n`1 <= n ' -> 'аза в коде.\n`1 <= n '
ru1 Russian nicky_ua 2015-08-09 22:50:49 365 Первая редакция (опубликовано)