Cách đơn giản nhất để giải quyết bài này là viết một hàm đệ quy như sau:
*** Nếu x <= 9: Lúc này tổng chỉ còn 1 chữ số, ta cần trả về x.
*** Ngược lại: Lúc này tổng chưa thỏa mãn chỉ có 1 chữ số, ta cần gọi đệ quy với tham số là tổng các chữ số của x.
$$\\$$
$$\color{#23d78c}{\texttt{P}}\color{#9ee36f}{\texttt{y}}\color{#10c1ed}{\texttt{t}}\color{#10c1ed}{\texttt{h}}\color{#c6ea64}{\texttt{o}}\color{#fbfb45}{\texttt{n}}$$
def dodep(x):
if (x <= 9): return x
return dodep(sum(map(int, str(x))))
print(dodep(int(input())))
# Author : Daoanhviet96
# Language : Python3
\begin{array}{c|c|c}\color{#ffd710}{\texttt{\{}} \color{#8655d6}{\texttt{\{}}\ \ \color{#8cdcda}{\text{Daoanhviet96}}\ \ \color{#8655d6}{\texttt{\}}} \color{#ffd710}{\texttt{\}}}\end{array}