#include<iostream>
using std::cout; using std::endl; using std::cin;
int main(){
long num1;
cin >> num1;
long num2;
cin >> num2;
long cnt = 0;
long temp = num1;
long res = 0;
while (cnt < num2){
res = temp % 10;
temp = temp/10;
temp = temp + (res * 100);
cnt++;
}
cout << num1 << endl; // Line 1
cout << temp << endl; // Line 2
cout << cnt << endl; // Line 3
}
このプログラムがこれらの出力をどのように得ているのか混乱しています。 ユーザー入力が456 2の場合、2行目に564が返されます。以下は私の仕事(問題4)です。計算を実行した後、私は624を得ます、なぜそれは564ですか?私がしようとしていた次の問題はユーザーの入力でした:789 3、私の答えが何千ものになるのを見た後、私はそれが間違っていると仮定しました。 私が何か間違っていて、どうすれば564の出力を得ることができるか教えてください。ありがとう。次のようにこのプログラムはどのようにこれらのアウトプットを出していますか? C++
コードをピクチャ(アクセシビリティの問題)や外部サイト(サイトがダウンする可能性あり)に含めないで、代わりにコードを質問にコピーし、コードブロックとしてフォーマットします。 – tambre
整数型は小数点以下を切り捨てます。 'temp == 789'ならば、' temp/10'は78を返さず、78.9を返します。 –
コードの絵を含んでいるので、この質問を議論の対象外としています。 –