Предмет: Информатика,
автор: 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. Единственная задача для которой не нашел решение.
Ответы
Автор ответа:
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
Предмет: Русский язык,
автор: Allinon
Предмет: Русский язык,
автор: NotkaXD
Предмет: Математика,
автор: Jpg13
Предмет: Математика,
автор: ilyapiatkov1