Hướng dẫn write a program to display the single digit sum of entered numbers in python - viết một chương trình để hiển thị tổng một chữ số của các số đã nhập trong python

Chương trình Python này tính toán tổng chữ số của một số nhất định cho đến khi số giảm xuống một chữ số.

Trong chương trình này, trước tiên chúng tôi đọc số từ người dùng. Sau đó, chúng tôi sử dụng vòng lặp while lồng nhau để tính tổng chữ số cho đến khi số giảm xuống một chữ số. Chúng tôi cũng hiển thị tổng ở mỗi bước.sum of digit until number reduces to single digit. We also display sum at each step.

Mã nguồn Python: Tổng chữ số cho đến khi số trở thành một chữ số


# Sum of digit until it reduces to single digit

# Reading number
number = int[input["Enter number: "]]

# Finding sum
total_sum = 0
step = 1

condition = True

while condition:
    
    while number:
        total_sum += number%10
        number //= 10
    
    print["Step-%d Sum: %d" %[step, total_sum]]
    number = total_sum
    total_sum = 0
    step += 1
    condition = number > 9

Đầu ra

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9

Cho một số n, chúng ta cần tìm tổng số các chữ số của nó như vậy: & nbsp;n, we need to find the sum of its digits such that: 

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]

Ví dụ: & nbsp; 

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 

Cách tiếp cận vũ phu là tổng hợp tất cả các chữ số cho đến khi tổng //en.wikipedia.org/wiki/digital_root

Dưới đây là việc thực hiện ý tưởng trên: & NBSP;

C++

#include

using

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
0
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
1

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
3
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
7

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
94
1
3
If n == 0
   return 0;

If n % 9 == 0      
    digSum[n] = 9
Else               
    digSum[n] = n % 9 
6

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
1
3
Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
99

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
1
7

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
1
06

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
1
08

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
1
3
If n == 0
   return 0;

If n % 9 == 0      
    digSum[n] = 9
Else               
    digSum[n] = n % 9 
6

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Java

If n == 0
   return 0;

If n % 9 == 0      
    digSum[n] = 9
Else               
    digSum[n] = n % 9 
8
1
14

9
1
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
85

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
9
4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
3
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6 #include7while4#include2

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4while5

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3
1
36#include1
1
38__

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
9
0
9
4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
16
1
51

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
222
1
57while5

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
26

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Python3

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
32
1
65

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
49
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36 while4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
46

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
49
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
67 #include1
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36__

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 #include1

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
1
89
1
90

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
94
1
3
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
49
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
67 #include1#include2

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
55
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36
1
57

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
80
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
81

C#

using

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
83

9
1
If n == 0
   return 0;

If n % 9 == 0      
    digSum[n] = 9
Else               
    digSum[n] = n % 9 
05

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
9
4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
3
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6 #include7while4#include2

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4while5

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3
1
36#include1
1
38__

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
9
0
9
4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
16
1
51

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
222
1
57while5

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
35

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
32
1
65

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
39

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
49
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36 while4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
46

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4while5

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3
1
36#include1
1
38__

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
9
0
9
4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
16
1
51

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
222
1
57while5

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
32
1
65

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
49
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36 while4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
46

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
98

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
6

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
7

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3 while4while5

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
1
3
1
36#include1
1
38__

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
5

1
06

If n == 0
   return 0;

If n % 9 == 0      
    digSum[n] = 9
Else               
    digSum[n] = n % 9 
85

Input : 1234
Output : 1
Explanation : The sum of 1+2+3+4 = 10, 
              digSum[x] == 10
              Hence ans will be 1+0 = 1

Input : 5674
Output : 4 
31

Output:  

9

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
9
0
9
4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
16
1
51
O[1]

If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
5
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
2
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
222
1
57while5
O[1]

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
32
1
65

//www.geeksforgeeks.org/digital-rootrepeated-digital-sum-given-integer/

Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
7
If n < 10    
    digSum[n] = n
Else         
    digSum[n] = Sum[digSum[n]]
6
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
49
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
36 while4
Enter number: 99999999999
Step-1 Sum: 99
Step-2 Sum: 18
Step-3 Sum: 9
46Ayush Khanduri. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to . See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
 


Làm thế nào để bạn tìm thấy tổng của các chữ số riêng lẻ của một số trong Python?

Sử dụng phương thức SUM [] Phương thức SUM [] được sử dụng để tính tổng số các chữ số của một số trong python trong danh sách. Chuyển đổi số thành một chuỗi bằng str [], sau đó dải chuỗi và chuyển đổi nó thành một danh sách các số với các phương thức dải [] và map [], tương ứng. Sau đó, tính toán tổng số bằng phương thức Sum []. The sum[] method is used to compute the sum of digits of a number in python in a list. Convert the number to a string using str[], then strip the string and convert it to a list of numbers with the strip[] and map[] methods, respectively. Then, compute the total using the sum[] method.

Làm thế nào để bạn kiểm tra xem một số là một chữ số duy nhất trong Python?

Bạn có thể kiểm tra xem một chuỗi, x, là một số tự nhiên chữ số duy nhất bằng cách kiểm tra xem chuỗi có chứa các chữ số và số nguyên tương đương của các chữ số đó là từ 1 đến 9, tức là cũng vậy, nếu x.checking if the string contains digits and the integer equivalent of those digits is between 1 and 9, i.e. Also, if x.

Làm thế nào để bạn in tổng của một số trong Python?

Xem ví dụ này:..
num = int [input ["nhập một số:"]].
Nếu num 0]:.
sum += num ..

Làm thế nào để bạn in tổng số các số từ 1 đến N trong Python?

Trong Python, phạm vi [n] không bao gồm N, vì vậy hãy sử dụng phạm vi [n + 1] thay thế.Bạn không cần chuyển đổi số nguyên thành chuỗi để in chúng.range[n + 1] instead. You do not need to convert integers to string in order to print them.

Bài Viết Liên Quan

Chủ Đề