Предмет: Информатика, автор: agigpao

ПРОВЕРЬТЕ МОЙ КОД.С++ Требуется написать программу, определяющую, является ли четырехзначное натуральное число N палиндромом, т.е. числом, которое одинаково читается слева направо и справа налево.

Входные данные
Входной файл INPUT.TXT содержит натуральное число N (1000 ≤ N ≤ 9999).

Выходные данные
В выходной файл OUTPUT.TXT следует вывести слово «YES», если число N является палиндромом, или «NO» – если нет.
Мой ответ(он неправильный);
#include
using namespace std;
main ()
{
int N,F,Q;
cin >> N;
F=N/100;
Q=(N/100)%1;
if ((F/10==Q%10)||(Q/10==F%10)) cout << "YES";
else cout << "NO";
return 0;
}


agigpao: Это acmp.ru. Единственная задача для которой не нашел решение.

Ответы

Автор ответа: pz4t9v0d4tly
1

#include <iostream>

using namespace std;

int main() {

int N(0); // 1234

cin >> N;

int digits[4] = {0};

digits[0] = N/1000; // 1

digits[1] = N/100-digits[0]*10; // 2

digits[2] = N/10-digits[0]*100-digits[1]*10; // 3

digits[3] = N-digits[0]*1000-digits[1]*100-digits[2]*10;

if(digits[0]==digits[3]&&digits[1]==digits[2]) {

 cout << "Yes.";

} else {

 cout << "No. ";

}

cout << endl << endl;

}

Похожие вопросы
Предмет: Другие предметы, автор: dugi9119