Làm thế nào để bạn đếm số chữ số trong một vòng lặp trong python?

Bài viết này được tạo ra để đề cập đến một số chương trình trong Python, đếm tổng số chữ số trong một số nhất định. Dưới đây là danh sách các chương trình được tạo cho bài viết này

  • Đếm các chữ số trong một số bằng cách sử dụng vòng lặp while
  • Đếm các chữ số trong một số bằng hàm len[]

Ví dụ: nếu người dùng nhập một số là 4298, thì đầu ra sẽ là 4 vì số này chứa 4 chữ số

Đếm tổng số chữ số trong một số bằng vòng lặp while

Câu hỏi đặt ra là viết chương trình Python để đếm tổng các chữ số có sẵn trong một số đã cho bằng cách sử dụng vòng lặp while. Chương trình đưa ra dưới đây là câu trả lời cho câu hỏi này

print["Enter the Number: "]
num = int[input[]]
tot = 0

while num:
  num = int[num/10]
  tot = tot+1

print["\nTotal Digit: "]
print[tot]

Đây là mẫu chạy của nó

Bây giờ cung cấp đầu vào nói 10324 dưới dạng một số và nhấn phím

Number of digits :9
88 để đếm và in tổng số chữ số có sẵn trong số đã cho như trong ảnh chụp nhanh bên dưới

Phiên bản sửa đổi của chương trình trước đó

Chương trình này sử dụng kết thúc, bỏ qua việc chèn một dòng mới tự động. Hàm str[] chuyển đổi bất kỳ loại giá trị nào thành loại chuỗi

Số nguyên do người dùng nhập vào được lưu trong biến n. Sau đó, vòng lặp while được lặp lại cho đến khi biểu thức kiểm tra n. = 0 được đánh giá là 0 [sai]. Chúng tôi sẽ coi 3456 là số nguyên đầu vào.  

  1. Sau lần lặp đầu tiên, giá trị của n sẽ được cập nhật thành 345 và số lượng được tăng lên 1
  2. Sau lần lặp thứ hai, giá trị của n sẽ được cập nhật thành 34 và số lượng được tăng lên 2
  3. Sau lần lặp thứ ba, giá trị của n sẽ được cập nhật lên 3 và số đếm được tăng lên 3
  4. Trong lần lặp thứ tư, giá trị của n sẽ được cập nhật thành 0 và số đếm sẽ tăng lên 4.  
  5. Sau đó, biểu thức kiểm tra được đánh giá [ n. =0 ] là sai và vòng lặp kết thúc với số cuối cùng là 4

Dưới đây là việc thực hiện các phương pháp trên

C++




Number of digits :9
89

Number of digits :9
90

Number of digits :9
91

Number of digits :9
92
Number of digits :9
93
Number of digits :9
94

 

Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
2
Number of digits :9
4

Number of digits :9
5

Number of digits :9
6
Number of digits :9
7
Number of digits :9
8

Number of digits :9
9
Number of digits :9
10
Number of digits :9
11

Number of digits :9
6
Number of digits :9
0
Number of digits :9
14

Number of digits :9
6
Number of digits :9
16
Number of digits :9
17

Number of digits :9
9
Number of digits :9
19

Number of digits :9
9
Number of digits :9
21

Number of digits :9
6
Number of digits :9
23

Number of digits :9
6
Number of digits :9
10
Number of digits :9
26

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
0
Number of digits :9
890
Number of digits :9
891
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
2
Number of digits :9
2
Number of digits :9
897

Number of digits :9
6
Number of digits :9
899
Number of digits :9
900
Number of digits :9
901

Number of digits :9
6
Number of digits :9
10
Number of digits :9
904

Number of digits :9
23

 

Number of digits :9
906

Number of digits :9
907

C




Number of digits :9
908

Number of digits :9
909

Number of digits :9
910

 

Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
2
Number of digits :9
4

Number of digits :9
5

Number of digits :9
6
Number of digits :9
7
Number of digits :9
8

Number of digits :9
9
Number of digits :9
10
Number of digits :9
11

Number of digits :9
6
Number of digits :9
0
Number of digits :9
14

Number of digits :9
6
Number of digits :9
16
Number of digits :9
17

Number of digits :9
9
Number of digits :9
19

Number of digits :9
9
Number of digits :9
21

Number of digits :9
6
Number of digits :9
23

Number of digits :9
6
Number of digits :9
10
Number of digits :9
26

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
0
Number of digits :9
890
Number of digits :9
891
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
2
Number of digits :9
2
Number of digits :9
897

Number of digits :9
6
Number of digits :9
00____101
Number of digits :9
02
Number of digits :9
03

Number of digits :9
6
Number of digits :9
10
Number of digits :9
904

Number of digits :9
23

Java




Number of digits :9
08

Number of digits :9
09

Number of digits :9
10
Number of digits :9
11

 

Number of digits :9
6
Number of digits :9
13
Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
4

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
0
Number of digits :9
22
Number of digits :9
23
Number of digits :9
24

Number of digits :9
9
Number of digits :9
16
Number of digits :9
27
Number of digits :9
23
Number of digits :9
29

Number of digits :9
30
Number of digits :9
31
Number of digits :9
32
Number of digits :9
24

Number of digits :9
30
Number of digits :9
21

Number of digits :9
9
Number of digits :9
23

Number of digits :9
9
Number of digits :9
10
Number of digits :9
26

Number of digits :9
6
Number of digits :9
23

 

Number of digits :9
6
Number of digits :9
44

Number of digits :9
6
Number of digits :9
46
Number of digits :9
13
Number of digits :9
891
Number of digits :9
49

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
2
Number of digits :9
54
Number of digits :9
55
Number of digits :9
24

Number of digits :9
9
Number of digits :9
58
Number of digits :9
900

Number of digits :9
60
Number of digits :9
61

Number of digits :9
6
Number of digits :9
23

Number of digits :9
23

Number of digits :9
65

Python3




Number of digits :9
66

Number of digits :9
67

 

 

Number of digits :9
68
Number of digits :9
69

Number of digits :9
6
Number of digits :9
71____172
Number of digits :9
23

Number of digits :9
6
Number of digits :9
16
Number of digits :9
76
Number of digits :9
72
Number of digits :9
23
Number of digits :9
79

Number of digits :9
9
Number of digits :9
81____182
Number of digits :9
82
Number of digits :9
72
Number of digits :9
32

Number of digits :9
9
Number of digits :9
71____188
Number of digits :9
72
Number of digits :9
90

Number of digits :9
6
Number of digits :9
10
Number of digits :9
71

 

 

Number of digits :9
94

Number of digits :9
81
Number of digits :9
72
Number of digits :9
55

Number of digits :9
98
Number of digits :9
01____1100
Number of digits :9
101
Number of digits :9
102

 

Number of digits :9
103

C#




Number of digits :9
104

Number of digits :9
09

Number of digits :9
92
Number of digits :9
107

 

Number of digits :9
10
Number of digits :9
11

 

Number of digits :9
6
Number of digits :9
13
Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
4

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
0
Number of digits :9
14

Number of digits :9
9
Number of digits :9
16
Number of digits :9
17

Number of digits :9
30
Number of digits :9
19

Number of digits :9
30
Number of digits :9
21

Number of digits :9
9
Number of digits :9
23

Number of digits :9
9
Number of digits :9
10
Number of digits :9
26

Number of digits :9
6
Number of digits :9
23

 

Number of digits :9
6
Number of digits :9
44

Number of digits :9
6
Number of digits :9
46
Number of digits :9
13
Number of digits :9
891
Number of digits :9
141

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
2
Number of digits :9
897

Number of digits :9
9
Number of digits :9
148
Number of digits :9
149

Number of digits :9
150
Number of digits :9
88
Number of digits :9
152
Number of digits :9
61

Number of digits :9
6
Number of digits :9
23

Number of digits :9
23

 

Number of digits :9
157

PHP




Number of digits :9
158

Number of digits :9
159

Number of digits :9
90

 

Number of digits :9
161
Number of digits :9
1____1163
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
167
Number of digits :9
168

Number of digits :9
6
Number of digits :9
16
Number of digits :9
01
Number of digits :9
163
Number of digits :9
173

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
163
Number of digits :9
72
Number of digits :9
179
Number of digits :9
01
Number of digits :9
163
Number of digits :9
182

Number of digits :9
9
Number of digits :9
184
Number of digits :9
167
Number of digits :9
24

Number of digits :9
6
Number of digits :9
23

Number of digits :9
6
Number of digits :9
10
Number of digits :9
167____124

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
163
Number of digits :9
196

Number of digits :9
197
Number of digits :9
900

Number of digits :9
9
Number of digits :9
200____1163
Number of digits :9
202

 

Number of digits :9
203

Number of digits :9
204

Javascript




Number of digits :9
205

 

Number of digits :9
206

Number of digits :9
90

 

Number of digits :9
161
Number of digits :9
209

Number of digits :9
5

Number of digits :9
6____2212

Number of digits :9
6
Number of digits :9
16
Number of digits :9
215

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
219

Number of digits :9
9
Number of digits :9
21

Number of digits :9
6
Number of digits :9
23

Number of digits :9
6
Number of digits :9
10
Number of digits :9
26

Number of digits :9
23

 

Number of digits :9
28

 

_______16____6897

Number of digits :9
6
Number of digits :9
232____6900
Number of digits :9
61

Number of digits :9
6

Number of digits :9
236

 

Number of digits :9
237

Đầu ra

Number of digits :9
1

Độ phức tạp về thời gian. O[log10[n]] hoặc O[số chữ số]
Không gian phụ. O[1] hoặc hằng số

Giải pháp đệ quy để đếm các chữ số trong một số nguyên

Tiếp tục chia số cho 10, điều này làm giảm kích thước số đầu vào xuống 1 và theo dõi số lượng kích thước đã giảm

thuật toán

  • Điều kiện cơ bản của phương pháp đệ quy này là khi chúng ta chia số cho 10 và số đó giảm xuống 0, vì vậy hãy trả về 1 cho thao tác này
  • Thực hiện lệnh gọi hàm bằng cách chia số cho 10, giảm kích thước đầu vào của số đã cho đi 1 và thêm 1 cho thao tác này

Dưới đây là việc thực hiện các phương pháp trên

C++




Number of digits :9
238

Number of digits :9
909

Number of digits :9
91

Number of digits :9
92
Number of digits :9
93
Number of digits :9
94

 

Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
2
Number of digits :9
4

Number of digits :9
5

Number of digits :9
6
Number of digits :9
7
Number of digits :9
252

Number of digits :9
9
Number of digits :9
10
Number of digits :9
11

Number of digits :9
6
Number of digits :9
10
Number of digits :9
258

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
0
Number of digits :9
890
Number of digits :9
891
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
2
Number of digits :9
2
Number of digits :9
897

Number of digits :9
6
Number of digits :9
899
Number of digits :9
272
Number of digits :9
901

Number of digits :9
6
Number of digits :9
10
Number of digits :9
904

Number of digits :9
23

Number of digits :9
278

C




Number of digits :9
279

Number of digits :9
909

Number of digits :9
910

 

Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
2
Number of digits :9
4

Number of digits :9
5

Number of digits :9
6
Number of digits :9
7
Number of digits :9
252

Number of digits :9
9
Number of digits :9
10
Number of digits :9
11

Number of digits :9
6
Number of digits :9
10
Number of digits :9
258

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
0
Number of digits :9
890
Number of digits :9
891
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
2
Number of digits :9
2
Number of digits :9
897

Number of digits :9
6
Number of digits :9
00____101
Number of digits :9
02
Number of digits :9
03

Number of digits :9
6
Number of digits :9
10
Number of digits :9
904

Number of digits :9
23

Java




Number of digits :9
08

Number of digits :9
09

Number of digits :9
8919
Number of digits :9
8920

 

Number of digits :9
10
Number of digits :9
11

 

Number of digits :9
6
Number of digits :9
13
Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
4

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
7
Number of digits :9
8933
Number of digits :9
32
Number of digits :9
8935
Number of digits :9
23
Number of digits :9
892

Number of digits :9
30
Number of digits :9
10
Number of digits :9
90____124

Number of digits :9
9
Number of digits :9
10
Number of digits :9
90
Number of digits :9
8945
Number of digits :9
32
Number of digits :9
202

Number of digits :9
6
Number of digits :9
23

 

Number of digits :9
6
Number of digits :9
44

Number of digits :9
6
Number of digits :9
46
Number of digits :9
13
Number of digits :9
891
Number of digits :9
49

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
2
Number of digits :9
54
Number of digits :9
55
Number of digits :9
24

Number of digits :9
9
Number of digits :9
58
Number of digits :9
900

Number of digits :9
60
Number of digits :9
61

Number of digits :9
6
Number of digits :9
23

Number of digits :9
23

 

Number of digits :9
65

Python3




Number of digits :9
8973

Number of digits :9
67

 

 

Number of digits :9
68
Number of digits :9
69

Number of digits :9
6
Number of digits :9
7
Number of digits :9
81
Number of digits :9
82
Number of digits :9
82
Number of digits :9
32
Number of digits :9
72
Number of digits :9
72
Number of digits :9
23
Number of digits :9
79

Number of digits :9
9
Number of digits :9
10
Number of digits :9
90

Number of digits :9
6
Number of digits :9
10
Number of digits :9
90
Number of digits :9
88
Number of digits :9
8994
Number of digits :9
82
Number of digits :9
82
Number of digits :9
32
Number of digits :9
892

 

 

Number of digits :9
94

Number of digits :9
81
Number of digits :9
72
Number of digits :9
55

Number of digits :9
98
Number of digits :9
01____1100
Number of digits :9
101
Number of digits :9
102

 

Number of digits :9
103

C#




Number of digits :9
104

Number of digits :9
09

Number of digits :9
92
Number of digits :9
107

 

Number of digits :9
10
Number of digits :9
11

 

Number of digits :9
6
Number of digits :9
13
Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
4

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
7
Number of digits :9
252

Number of digits :9
30
Number of digits :9
10
Number of digits :9
11

Number of digits :9
9
Number of digits :9
10
Number of digits :9
258

Number of digits :9
6
Number of digits :9
23

 

Number of digits :9
6
Number of digits :9
9035

Number of digits :9
6
Number of digits :9
46
Number of digits :9
13
Number of digits :9
891
Number of digits :9
141

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
2
Number of digits :9
897

Number of digits :9
9
Number of digits :9
148
Number of digits :9
9048

Number of digits :9
150
Number of digits :9
88
Number of digits :9
9051

Number of digits :9
150
Number of digits :9
61

Number of digits :9
6
Number of digits :9
23

Number of digits :9
23

 

Number of digits :9
157

PHP




Number of digits :9
158

Number of digits :9
9059

Number of digits :9
90

 

Number of digits :9
161
Number of digits :9
1____1163
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
7
Number of digits :9
01
Number of digits :9
163
Number of digits :9
9070

Number of digits :9
9
Number of digits :9
10
Number of digits :9
11

Number of digits :9
6
Number of digits :9
10
Number of digits :9
9076____1163
Number of digits :9
9078

Number of digits :9
23

 

Number of digits :9
9080

Number of digits :9
163
Number of digits :9
196

Number of digits :9
98
Number of digits :9
01____6900
Number of digits :9
9086

Number of digits :9
30
Number of digits :9
9088
Number of digits :9
163
Number of digits :9
9090

 

Number of digits :9
9091

Number of digits :9
204

Javascript




Number of digits :9
205

 

Number of digits :9
9094

Number of digits :9
909

 

Number of digits :9
161
Number of digits :9
209

Number of digits :9
5

Number of digits :9
6
Number of digits :9
7
Number of digits :9
252

Number of digits :9
9
Number of digits :9
10
Number of digits :9
11

Number of digits :9
6
Number of digits :9
10
Number of digits :9
9107

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
9110
Number of digits :9
897

Number of digits :9
232
Number of digits :9
272
Number of digits :9
61

 

Number of digits :9
237

Đầu ra

Number of digits :9

Độ phức tạp về thời gian. O[log[n]] 
Không gian phụ. O[log[n]]

Giải pháp dựa trên nhật ký để đếm các chữ số trong một số nguyên

Chúng ta có thể sử dụng log10[logarit của cơ số 10] để đếm số chữ số của số dương [logarit không được xác định cho số âm].
Số chữ số của N = cận trên của log10[N].

Dưới đây là triển khai ý tưởng trên

C++




Number of digits :9
9116

Number of digits :9
909

Number of digits :9
91

Number of digits :9
92
Number of digits :9
93
Number of digits :9
94

 

Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
2
Number of digits :9
9126

Number of digits :9
9127
Number of digits :9
10
Number of digits :9
9129
Number of digits :9
01
Number of digits :9
9131
Number of digits :9
9132

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
0
Number of digits :9
890
Number of digits :9
891
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
2
Number of digits :9
2
Number of digits :9
897

Number of digits :9
6
Number of digits :9
899
Number of digits :9
900

Number of digits :9
9147____6901

Number of digits :9
6
Number of digits :9
10
Number of digits :9
904

Number of digits :9
23

 

Number of digits :9
9153

C




Number of digits :9
9154

Number of digits :9
909

Number of digits :9
9156

Number of digits :9
910

 

Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
2
Number of digits :9
9126

Number of digits :9
9127
Number of digits :9
10
Number of digits :9
9129
Number of digits :9
01
Number of digits :9
9131
Number of digits :9
9132

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
0
Number of digits :9
890
Number of digits :9
891
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
2
Number of digits :9
2
Number of digits :9
897

Number of digits :9
6
Number of digits :9
00____101
Number of digits :9
02
Number of digits :9
03

Number of digits :9
6
Number of digits :9
10
Number of digits :9
904

Number of digits :9
23

Java




Number of digits :9
08

Number of digits :9
09

Number of digits :9
8919
Number of digits :9
8920

 

Number of digits :9
10
Number of digits :9
11

 

Number of digits :9
6
Number of digits :9
13
Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
4

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
10
Number of digits :9
01_______10____69207
Number of digits :9
90
Number of digits :9
202

Number of digits :9
6
Number of digits :9
23

 

Number of digits :9
6
Number of digits :9
44

Number of digits :9
6
Number of digits :9
46
Number of digits :9
13
Number of digits :9
891
Number of digits :9
49

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
2
Number of digits :9
54
Number of digits :9
55
Number of digits :9
24

Number of digits :9
9
Number of digits :9
58
Number of digits :9
900

Number of digits :9
60
Number of digits :9
61

Number of digits :9
6
Number of digits :9
23

Number of digits :9
23

Number of digits :9
65

Python3




Number of digits :9
9235

Number of digits :9
9236

 

Number of digits :9
9237

Number of digits :9
8919
Number of digits :9
9239

 

 

Number of digits :9
68
Number of digits :9
69

Number of digits :9
6
Number of digits :9
10
Number of digits :9
9244
Number of digits :9
88
Number of digits :9
90
Number of digits :9
892

 

 

Number of digits :9
94

Number of digits :9
81
Number of digits :9
72
Number of digits :9
55

Number of digits :9
98
Number of digits :9
01____1100
Number of digits :9
101
Number of digits :9
102

 

Number of digits :9
103

C#




Number of digits :9
104

Number of digits :9
09

Number of digits :9
92
Number of digits :9
107

 

Number of digits :9
10
Number of digits :9
11

 

Number of digits :9
6
Number of digits :9
13
Number of digits :9
0
Number of digits :9
1
Number of digits :9
2
Number of digits :9
4

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
10
Number of digits :9
01____10
Number of digits :9
9276

Number of digits :9
6
Number of digits :9
23

 

Number of digits :9
6
Number of digits :9
44

Number of digits :9
6
Number of digits :9
46
Number of digits :9
13
Number of digits :9
891
Number of digits :9
141

Number of digits :9
6
Number of digits :9
5

Number of digits :9
9
Number of digits :9
2
Number of digits :9
897

Number of digits :9
9
Number of digits :9
148
Number of digits :9
900

Number of digits :9
150
Number of digits :9
61

Number of digits :9
6
Number of digits :9
23

Number of digits :9
23

 

Number of digits :9
9299

PHP




Number of digits :9
158

Number of digits :9
9301

Number of digits :9
9302

Number of digits :9
9303

 

Number of digits :9
161
Number of digits :9
1____1163
Number of digits :9
892

Number of digits :9
5

Number of digits :9
6
Number of digits :9
10
Number of digits :9
9129____69312
Number of digits :9
163
Number of digits :9
9314

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
163
Number of digits :9
196

Number of digits :9
197
Number of digits :9
900____69321

Number of digits :9
6
Number of digits :9
1____1163____2202

 

Number of digits :9
9326

Number of digits :9
204

Javascript




Number of digits :9
205

 

Number of digits :9
9329

Number of digits :9
909

Number of digits :9
161
Number of digits :9
209

Number of digits :9
5

Number of digits :9
6
Number of digits :9
10
Number of digits :9
9336

Number of digits :9
23

 

Number of digits :9
28

Number of digits :9
9110
Number of digits :9
897

Number of digits :9
232
Number of digits :9
900 
Number of digits :9
88

Number of digits :9
9344____69345

Number of digits :9
9344

Number of digits :9
9347

 

Number of digits :9
237

Đầu ra

Number of digits :9
1

Độ phức tạp về thời gian. O[1] hoặc hằng số
Không gian phụ. O[1] hoặc hằng số

Chuyển đổi số đã cho thành giải pháp chuỗi để đếm các chữ số trong một số nguyên

Ta có thể chuyển số thành chuỗi rồi tìm độ dài chuỗi để được số chữ số trong số ban đầu.  

Chủ Đề