Un număr natural se numeşte palindrom dacă numărul citit de la stânga la
dreapta este egal cu numărul citit de la dreapta la stânga. Scrieţi un program
care citeşte de pe prima linie a fişierului text NUMERE.IN un număr natural n
(0
cifre fiecare.Programul scrie în fişierul text NUMERE.OUT numerele
palindroame de pe a doua linie a fişierului NUMERE.IN.
Exemplu: dacă fişierul NUMERE.IN conţine
6
125 66 458 64146 323 4589
atunci NUMERE.OUT va conţine numerele: 66 64146 323.
Răspunsuri la întrebare
Răspuns de
3
Răspuns:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("NUMERE.IN");
ofstream fout("NUMERE.OUT");
int n,nr,aux,inv;
fin>>n;
for(int i=1;i<=n;i++)
{
fin>>nr;
aux=nr;
inv=0;
while(aux)
{
inv=inv*10+aux%10;
aux=aux/10;
}
if(inv==nr) fout<<nr<<" ";
}
return 0;
}
Explicație:
Salut. Am folosit o metoda iterativa, in timp ce am citit din fisier numerele i-am facut inversul si am testat daca este palindrom, adica daca numarul este egal cu inversul sau. Si in caz afirmativ, l-am tiparit in fisier.
In caz ca nu intelegi ceva, te rog scrie-mi.
Alte întrebări interesante
Biologie,
8 ani în urmă
Limba română,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
8 ani în urmă
Biologie,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă