In this Answer, our goal is to reverse the given number (an integer input), as shown below:

We can create a solution for the specified objective or problem statement in various ways, like using a while loop iteration or string slicing to reverse the given number. Let’s look at both approaches to reverse a number in Python.

In this approach, we use a while loop to iterate the given number if it is greater than 0. Within the loop, we calculate the remainder of the given number using the modulus operator to extract the last digit. Then, we multiply the current reverse value by 10, which shifts the digits one place to the left, and we add the remainder to the resultant number. Finally, we update the given number by performing integer division by 10, which discards its last digit.

Let’s implement this approach in Python to reverse a number using while loop iteration, as follows:

given_number = int(input())# Check if the given number is negativeis_negative = Falseif given_number < 0:is_negative = Truegiven_number = abs(given_number)# Reverse the given numberoriginal_number = given_numberreversed_number = 0while given_number > 0:remainder = given_number % 10reversed_number = (reversed_number * 10) + remaindergiven_number = given_number // 10# Add negative sign to the reversed number if the given number was negativeif is_negative:reversed_number *= -1print(f"Original number: {original_number}")print(f"Reversed number: {reversed_number}")

Enter the input below

Note:Before pressing the “Run” button, enter a number in the “Enter the input below” field.

Let’s discuss the code above:

**Lines 1–7:**We start by taking an integer input from the user using the`int()`

function. Then, we check if the given number is negative. If it is negative, we set the`is_negative`

flag to`True`

and take the absolute value of the given number using the`abs()`

function. This step ensures that we work with the absolute value of the number for the reversal process.**Lines 10–15:**We proceed with the reversal process. We initialize`original_number`

to store the original value of`given_number`

, and`reversed_number`

to store the reversed number. Using a`while`

loop, we extract digits from`given_number`

one by one (calculating the`remainder`

when divided by`10`

), add them to`reversed_number`

, and remove them from`given_number`

until`given_number`

becomes zero.**Lines 18–19:**After the reversal process, if the original number was negative (indicated by the`is_negative`

flag), we apply a negative sign to the`reversed_number`

to maintain the sign consistency.**Lines 21–22:**Finally, we print both the original number (`original_number`

) and the reversed number (`reversed_number`

).

Now that we understand how to reverse a number using a while loop, let’s explore Python’s string slicing capabilities to provide a more straightforward approach to reversing a number.

In this approach, after taking the input number from the user, we first check if it is negative and store this information. Then, instead of manipulating integers directly, we convert the number to a string. By converting the number to a string, we gain access to powerful string manipulation methods, including string slicing. Python’s string slicing allows us to effortlessly reverse a string by specifying a slicing step of `-1`

. This step indicates that we want to traverse the string in reverse order.

Here’s the implementation of this string slicing approach in Python to reverse the number:

given_number = int(input())# Check if the given number is negativeis_negative = Falseif given_number < 0:is_negative = Truegiven_number = abs(given_number)# Convert the number to a string to reverse it using string slicingoriginal_number_str = str(given_number)reversed_number_str = original_number_str[::-1]# Convert the reversed string back to an integerreversed_number = int(reversed_number_str)# Add negative sign to the reversed number if the given number was negativeif is_negative:reversed_number *= -1print(f"Original number: {given_number}")print(f"Reversed number: {reversed_number}")

Enter the input below

**Note:** Here, we have provided an explanation of the code segment that differs from the previous implementation.

Let’s discuss the code above:

**Line 10:**Convert the number to a string using the`str()`

function so we can reverse it using slicing.**Line 11:**Reverse the string using slicing`[::-1]`

.**Line 14:**Convert the reversed string back to an integer using the`int()`

function.

By leveraging Python’s string manipulation capabilities, we achieved the same result with fewer lines of code and increased readability. This demonstrates the flexibility and power of Python’s built-in functions and methods for handling common programming tasks.

We’ve successfully coded the solutions to reverse a given number in Python. Now, the next time someone asks you, “How to reverse a given number in Python?” you can share the knowledge and code it. Happy coding!

Frequently Asked Questions (FAQs)

Question 1

Can we use this code for negative numbers?

Show Answer

Copyright ©2024 Educative, Inc. All rights reserved

TRENDING TOPICS