計算順序で出力結果が異なる
以下のコードにおいて、出力結果が異なるのは何故でしょうか
文字コードは知っているのですが、
以下のコードを実行した際に何故、753を先に引くか、後で引くかで
結果が異なるのでしょうか
該当のソースコード
c++
1#include <bits/stdc++.h> 2using namespace std; 3 4int main(){ 5 6 string s = "123"; 7 8 cout << abs((s.at(0)-'0')*100 + (s.at(1)-'0')*10 + s.at(2)-'0' - 753) << endl; 9 cout << abs(753 - (s.at(0)-'0')*100 + (s.at(1)-'0')*10 + s.at(2)-'0') << endl; 10}
出力結果
Start 630 676 Finish
###実行環境
wandbox GCC9.2.0 gnu++2a
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/27 13:21