Digital Root
Repeatedly sum the digits of a number until a single digit remains.
Sample input
493193
Sample output
2
Solution
n = 493193
while n >= 10:
n = sum(int(d) for d in str(n))
print(n)
let n = 493193;
while (n >= 10) {
let sum = 0;
while (n > 0) {
sum += n % 10;
n = Math.floor(n / 10);
}
n = sum;
}
console.log(n);
public class Main {
public static void main(String[] args) {
int n = 493193;
while (n >= 10) {
int sum = 0;
while (n > 0) {
sum += n % 10;
n /= 10;
}
n = sum;
}
System.out.println(n);
}
}
fun main() {
var n = 493193
while (n >= 10) {
var sum = 0
while (n > 0) {
sum += n % 10
n /= 10
}
n = sum
}
println(n)
}
var n = 493193
while n >= 10 {
var sum = 0
while n > 0 {
sum += n % 10
n /= 10
}
n = sum
}
print(n)
void main() {
int n = 493193;
while (n >= 10) {
int sum = 0;
while (n > 0) {
sum += n % 10;
n ~/= 10;
}
n = sum;
}
print(n);
}
#include <iostream>
using namespace std;
int main() {
int n = 493193;
while (n >= 10) {
int sum = 0;
while (n > 0) {
sum += n % 10;
n /= 10;
}
n = sum;
}
cout << n << endl;
return 0;
}
#include <stdio.h>
int main() {
int n = 493193;
while (n >= 10) {
int sum = 0;
while (n > 0) {
sum += n % 10;
n /= 10;
}
n = sum;
}
printf("%d\n", n);
return 0;
}