Palindrome C ++程序

时间:2016-09-02 08:38:21

标签: c++ palindrome

我希望有人帮我纠正这个程序中的错误。

#include<iostream.h>
#include<conio.h>
void main();
{int r,n,Rev=0,temp;

    cin>>n;
    temp=n;
    while(n>0)
        Rev=Rev*10+n%10;
    n=n/10;
    if(temp==Rev)
        cout<<"test is positive";
    else
        cout<<"test is negative";
    getch();
}

Rev表示我们在反转数字时获得的数字。在正面测试的情况下,它变成了一个回文,否则它不会。Temp是临时变量

2 个答案:

答案 0 :(得分:1)

此行位于while

之外
  n/n10;

所以 n 永远不会&lt; 0

    #include<iostream.h>
    #include<conio.h>

        void main();
        {
int r,n,Rev=0,temp;

            cin>>n;
            temp=n;
            while(n>0){
                Rev=Rev*10+n%10;
            n=n/10;
            }

            if(temp==Rev)
                cout<<"test is positive";
            else
                cout<<"test is negative";
            getch();
        }

答案 1 :(得分:0)

#include<iostream>
    using namespace std;
        int main()
        {
            int num,rev,pal;
            cout<<"Enter number ";cin>>num;
            pal=num;
            for( ;num!=0; )
            {
                rev=(0*10)+num%10;
                num/=10;
            }
            if(pal==rev)
                cout<<"number id palindrome";
            else
                cout<<"Number is not palindrome";