How would you check if a number is palindrome using a looping algorithm in any programming language ?

A palindrome number is one which remains the same when its digits are reversed. For example 121, if you write 121 backwards its still 121.

The algorithm involves a really simple loop which just reverses the number. The number can then be compared with the original number to check whether they are same or not. If same then the number is palindrome. The code is as follows-

Let 'num' be the variable holding the number and 'copy' be holding a copy of the same number.

Let 'rev' be the variable holding the reverse of the number 'num'. Initial value of 'rev' is 0.

Let 'rem' be the variable holding the remainder of the number at each iteration. Then the loop is-

while(num>0)
{
   rem=num%10;           //takes the last digit of num
   rev=rev*10+rem;       //calculates reverse 
   num=num/10;           //takes num to next digit
}

After this loop finishes we will have the reverse of the number in 'rev' variable. Now this can be compared with 'copy' variable which stores the original number to check if both are same and thus palindrome.


if(rev=copy)
print 'Palindrome'
else
print 'Not Palindrome'

Note that, the 'rev' variable cannot be compared to 'num' variable since the value of 'num' has been modified repetedly by the command 'num=num/10' and now is less than 0 which eventually breaks the loop.

Answered by Yatharth R. Computing tutor

10155 Views

See similar Computing GCSE tutors

Related Computing GCSE answers

All answers ▸

Storage: Magnetic hard disc vs Solid state drive.


What is the use of a web-server on the internet?


How would you represent the decimal number 143 in 7 bit binary?


Convert the hexadecimal value 'C3' into its binary equivalent.


We're here to help

contact us iconContact usWhatsapp logoMessage us on Whatsapptelephone icon+44 (0) 203 773 6020
Facebook logoInstagram logoLinkedIn logo

© MyTutorWeb Ltd 2013–2024

Terms & Conditions|Privacy Policy