Top.Mail.Ru
Ответы
Аватар пользователя
12лет
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+4

Как работает данная программа (очень простая) 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;

Буду благодарен:)

По дате
По рейтингу
Аватар пользователя
Новичок
12лет

Эта программа занимается тем, что переворачивает число и сравнивает его с оригиналом, если совпадают, значит - палиндром!
% - операция "остаток от деления целого"
В данном случае, целое делиться на 10 и вычисляется его остаток, например 323 % 10 = 3
Потом результат складывается с, умноженным на порядок, значением в переменной b
Далее число 323 делиться на 10 и этот результат сохраняется в ту же переменную, то есть 323 / 10 = 32
Всё повторяется, пока есть что делить в temp

Аватар пользователя
Мудрец
12лет

% - остаток от деления

Аватар пользователя
Просветленный
12лет

знак процента - это остато от деления
ну а последнюю можно переписать ак temp=temp/10