Module: (Python) 条件循环语句 - WHILE


Problem

6/21

数字位数

Theory Click to read/hide

任务

您必须输入一个数字(小于 3,000,000)并确定其中的位数。
 
解决思路
我们只需要依次从数字中截去最后一位(这可以通过将数字减少 10 次,使用整数除以 10 来完成),每次我们都需要增加计数器。 

这样一来,我们把号码的所有数字都截掉后,就可以在计数器中得到他们的号码了。

该算法可以表述如下:
直到数字为零,每次减 10,计数器加 1。
  <头> <正文>
该程序将如下所示。 n = 整数(输入()) 计数 = 0 当 n != 0 时: 计数 += 1 n = n // 10 print("Number -", n, "contains", count, "digits")
你需要牢记这个程序,因为。在此基础上,解决了与数字数字处理相关的许多其他任务。

Problem

运行程序。 

看看她的工作成果。
输出短语中的一切都好吗?想想如何解决这个问题。
数 (n) 计数器
123 0
12 1
1 2
0 3
1
n = int(input())          
2
count = 0          
3
while n != 0:          
4
  count += 1          
5
  n = n // 10          
6
print("Number -", n, "contains", count, "digits")          

     

Program check result

To check the solution of the problem, you need to register or log in!