


Как работает данная программа (очень простая) C++
Дан такой код.
#include <iostream>
using namespace std;
int main()
{
int a;
cin >> a;
int temp = a;
int b = 0;
while (temp!= 0)
{
b = b * 10 + temp % 10;
temp /= 10;
}
if (a == b)
cout << "Yes!";
else
cout << "Fail :(";
system ("pause");
return 0;
}
Подскажите, что означает знак %, и как работают эти 2 строки:
b = b * 10 + temp % 10;
temp /= 10;
Буду благодарен:)
Эта программа занимается тем, что переворачивает число и сравнивает его с оригиналом, если совпадают, значит - палиндром!
% - операция "остаток от деления целого"
В данном случае, целое делиться на 10 и вычисляется его остаток, например 323 % 10 = 3
Потом результат складывается с, умноженным на порядок, значением в переменной b
Далее число 323 делиться на 10 и этот результат сохраняется в ту же переменную, то есть 323 / 10 = 32
Всё повторяется, пока есть что делить в temp
% - остаток от деления
знак процента - это остато от деления
ну а последнюю можно переписать ак temp=temp/10