Verificare daca un numar este palindrom dar varianta pentru numere care contin pana la 80 de cifre. Adica nu vrea programul in care afli inversul si il compari cu numarul insusi deoarece nu functioneaza pentru numere mari. Va rog sa postati doar daca ati incercat cu numere care contin 80 de cifre.
Răspunsuri la întrebare
Răspuns de
1
Pai daca ai numere mari, folosesti string-ul:
Pascal:
var
s:string;
i:byte;
begin
read(s);
for i:=0 to length(s)-1 do
if s[i+1]<>s[length(s)-i] then
begin
writeln('NU');
exit
end;
writeln('DA');
end.
C++:
#include <iostream>
#include <cstring>
using namespace std;
char s[80];
int main()
{
cin >> s;
for(unsigned i=0;i<strlen(s);i++)
if(s[i]!=s[strlen(s)-1-i])
{
cout << "NU";
return 0;
}
cout << "DA";
return 0;
}
Pascal:
var
s:string;
i:byte;
begin
read(s);
for i:=0 to length(s)-1 do
if s[i+1]<>s[length(s)-i] then
begin
writeln('NU');
exit
end;
writeln('DA');
end.
C++:
#include <iostream>
#include <cstring>
using namespace std;
char s[80];
int main()
{
cin >> s;
for(unsigned i=0;i<strlen(s);i++)
if(s[i]!=s[strlen(s)-1-i])
{
cout << "NU";
return 0;
}
cout << "DA";
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Informatică,
8 ani în urmă
Engleza,
9 ani în urmă
Chimie,
9 ani în urmă
Limba română,
9 ani în urmă
Geografie,
9 ani în urmă