Trying to understand a code of counting numbers digits in python

Tags: , , , ,



Can someone explain to me the code below. I need to understand what line 2 and line 5 mean when we count digits of a number (ex. 100).

def Counting(Number):
    Count = 0
    while(Number > 0):
        Number = Number // 10
        Count = Count + 1
    print("Number of Digits in a Given Number:", Count)
Counting(100)

Answer

Count

is the variable used to store the number of digits in Number.

while (Number > 0):

this line continues looping until the Number is 0. In other words it loops while Number is a positive integer.

Number = Number // 10

floor division of Number by 10. When you divide a number by 10, you are “removing” its last digit. For example, in the case of 100, it would be

100 // 10 = 10

or in the case of 12345,

12345 // 10 = 1234

this effectively reduces the number of digits by one.

Count = Count + 1

increments Count, as we have removed one digit from Number.



Source: stackoverflow