Module: (Python) Koşullu döngü deyimi - WHILE


Problem

6/21

Sayı basamakları

Theory Click to read/hide

Görev

Bir sayı girmeli (3.000.000'den küçük olsun) ve içindeki basamak sayısını belirlemelisiniz.
 
Çözüm fikri
Sadece sayıdan son basamağı sırayla kesmemiz gerekiyor (bu, tamsayıyı 10'a bölerek sayıyı 10 kat azaltarak yapılabilir) ve her seferinde sayacı artırmamız gerekiyor. 

Sonuç olarak sayının tüm rakamlarını kestikten sonra sayaçta onların numarasını alacağız.

Bu algoritma şu şekilde formüle edilebilir:
Sayı sıfır olana kadar, 10 azaltın ve her seferinde sayacı 1 artırın.
  sayı (n) sayaç
Program böyle görünecek. n = int(giriş()) sayı = 0 n != 0 iken: saymak += 1 n = n // 10 print("Sayı -", n, "içerir", sayım, "rakamlar")
Bu programı ezbere bilmeniz gerekiyor, çünkü. temelinde, bir sayının basamaklarının işlenmesiyle ilgili diğer birçok görev çözülür.

Problem

Programı çalıştırın. 

Çalışmasının sonucuna bakın.
Çıktı ifadesinde her şey yolunda mı? Bu sorunu nasıl çözebileceğinizi düşünü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!