Python Forum
Program to check whether a number is palindrome or not - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: Homework (https://python-forum.io/forum-9.html)
+--- Thread: Program to check whether a number is palindrome or not (/thread-40691.html)

Pages: 1 2


Program to check whether a number is palindrome or not - PythonBoy - Sep-07-2023

A palindrome number is a number which if written backwards also, the number will look the same
Eg: 112211, 121, 898

I have a homework to write a program to check if a number is palindrome or not using concepts of loops
I failed miserably.

My code:
Input = input("Enter any number: ")
LengthOfInput = int(len(Input))
for x in range(LengthOfInput):
    a = 10


while Input:
    if Input[0] == Input[LengthOfInput]:
        continue
        if Input[x] == Input[LengthOfInput-x]:
            x=10
    else:
        print("Number is not palindrome")

print("The number is a palindrome")
  
Error:
LengthOfInput = len(Input) TypeError: object of type 'int' has no len()
Please help with this project, it is a very interesting project that I was not able to figure out by myself

Thank you!


RE: Program to check whether a number is palindrome or not - snippsat - Sep-07-2023

There are servals problems here,and you can only get that error message if using Python 2.7.
So Python 2 is dead💀 for many years ago,so you need to figure that out.
Here some code to help.
# pali.py
number = input("Enter any number: ")
lengt_of_input = int(len(number))
is_palindrome = True
for n in range(lengt_of_input // 2):
    if number[n] != number[lengt_of_input- n - 1]:
        is_palindrome = False
        break
Test.
# Python version,so 3.11 is newest one  
G:\div_code
λ python -V
Python 3.11.3

G:\div_code
λ ptpython -i pali.py
Enter any number: 898
>>> is_palindrome
True

G:\div_code
λ ptpython -i pali.py
Enter any number: 12341
>>> is_palindrome
False



RE: Program to check whether a number is palindrome or not - PythonBoy - Sep-07-2023

Thanks very much for the help!

So are you telling me that if I download Python 3.11(newest version) then this program will work?, because I think in Python 2.7 value of len() cannot be an integer and in Python 3 value of len() can be an integer?


RE: Program to check whether a number is palindrome or not - DPaul - Sep-07-2023

Hi, No loops allowed ? then try:
x = '1234321'
y = x[::-1]
Is y == x ?
Paul


RE: Program to check whether a number is palindrome or not - PythonBoy - Sep-07-2023

(Sep-07-2023, 01:33 PM)DPaul Wrote: Hi, No loops allowed ? then try:
x = '1234321'
y = x[::-1]
Is y == x ?
Paul

Thanks for the reply but the homework is to do it using loops


RE: Program to check whether a number is palindrome or not - snippsat - Sep-07-2023

(Sep-07-2023, 01:23 PM)PythonBoy Wrote: So are you telling me that if I download Python 3.11(newest version) then this program will work?, because I think in Python 2.7 value of len() cannot be an integer and in Python 3 value of len() can be an integer?
The problem is line before input("Enter any number: ") in Python 2.7 this will return a integer,and in Python 3(input() change) it will return a string.
Yes it will work with Python 3.11.


RE: Program to check whether a number is palindrome or not - PythonBoy - Sep-07-2023

(Sep-07-2023, 01:33 PM)DPaul Wrote: Hi, No loops allowed ? then try:
x = '1234321'
y = x[::-1]
Is y == x ?
Paul

Although this is not the want, my teacher wants me to do it,

I am interested in this method also. Could you please explain why did we write y = x[::-1]?


RE: Program to check whether a number is palindrome or not - PythonBoy - Sep-07-2023

(Sep-07-2023, 01:38 PM)snippsat Wrote:
(Sep-07-2023, 01:23 PM)PythonBoy Wrote: So are you telling me that if I download Python 3.11(newest version) then this program will work?, because I think in Python 2.7 value of len() cannot be an integer and in Python 3 value of len() can be an integer?
The problem is line before input("Enter any number: ") in Python 2.7 this will return a integer,and in Python 3(input() change) it will return a string.
Yes it will work with Python 3.11.

Oh Thank you very much for the good news, I will download the newest version of Python and try it out


RE: Program to check whether a number is palindrome or not - PythonBoy - Sep-07-2023

(Sep-07-2023, 01:42 PM)PythonBoy Wrote:
(Sep-07-2023, 01:33 PM)DPaul Wrote: Hi, No loops allowed ? then try:
x = '1234321'
y = x[::-1]
Is y == x ?
Paul

Although this is not the way my teacher wants me to do it,

I am interested in this method also. Could you please explain why did we write y = x[::-1]?



RE: Program to check whether a number is palindrome or not - DPaul - Sep-07-2023

(Sep-07-2023, 01:43 PM)PythonBoy Wrote: I am interested in this method also. Could you please explain why did we write y = x[::-1]?

Look here:
https://www.guru99.com/1-in-python.html
Paul