Salam. 5 rəqəmli bir ededin c++ dilində polindrom olub olmadığının yoxlanılmasını necə yaza bilərik?(polindrom ədədlər sağdan sola ,soldan sağa eyni oxunan ədədlərdir.)
Salam. 5 rəqəmli bir ededin c++ dilində polindrom olub olmadığının yoxlanılmasını necə yaza bilərik?(polindrom ədədlər sağdan sola ,soldan sağa eyni oxunan ədədlərdir.)
Verilmiş cavablar və yazılan şərhlər (3 cavab var)
1
Ola bilsin bu məsələnin daha optimal həlli olsun, amma mən çox fikirləşmədən bu həll üsulunu seçərdim biraz trivial görünsədə. 3-cü rəqəmi bilməyə ehtiyac yoxdur, çünki ədədin 5 rəqəmli olduğu şətdə verilib, ona görə 3-cü rəqəm polindromluğa təsir eləmir. Qalır 1, 2, 4 və 5 -ci rəqəmləri tapmaq və müqaisə eləmək. Başqa sözlə təklik, onluq, minlik və onminlik mərtəbə vahidlərin tapmalıyıq. Təklik onminliyə, onluq isə minlik mərtəbə vahidinə bərabər olmaldır. Bunun üçün mən 4 dənə tam tipli dəyişən elan edərdim. Bu dəyişənlərə müvafiq mərtəbə vahidlərin mənimsədib müqaisə edərdim. Qalır bir dənə verilmiş ədədin tələb olunan mərtəbə vahidin tapmaq. Bunun üçün də bölmə və qalıq operatorlarından istifadə etmək olar. Misal üçün təklik çox asan tapılır, verilmiş ədədin 10-a bölünməsindən alınan qalıq(x%10). 10-luq bir qədər hesab tələb eliyir. Ədədin 100-ə bölünməsindən alınan qalığı (y = x%100), 10 -a bölürük (y / 10). Yerdə qalan digər mərtəbə vahidlərini də oxşar metodla müəyyən etmək olar.
0
#include
using namespace std;
int main() {
int numb1;
cout <> numb1;
int a = numb1 % 10;
int b = numb1 % 100 / 10;
int c = numb1 % 1000 / 100;
int d = numb1 % 10000 / 1000;
int e = numb1 % 100000 / 10000;
if (a == e && b == d)
{
cout << "Bu eded Polindromdur.";
}
else
{
cout << "Bu eded Polindrom deyil.";
}
}
0
kocurtme amma mentiqini basha dush calish.
Sual verin
Cavab verin