Check whether a number is Armstrong Dry Run in C

Check whether a number is Armstrong is an interactive C dry run visualizer from the For programs section. Study the source code, then use the execution controls to follow each step, variable update, highlighted line, and console output.

This page provides a browser-based dry run with source-code highlighting, auto-scroll, voice narration controls, and execution output for learning the program step by step.

Check whether a number is Armstrong Program Code

#include <stdio.h>
int main() {
    int num, sum = 0, digits = 0, temp, i;
    printf("Enter a number: ");
    scanf("%d", &num);
    
    // First loop: Count digits
    for(temp = num; temp != 0; temp /= 10) {
        digits++;
    }
    
    // Second loop: Calculate sum of digits^digits
    for(temp = num; temp != 0; temp /= 10) {
        int digit = temp % 10;
        int power = 1;
        for(i = 1; i <= digits; i++) {
            power *= digit;
        }
        sum += power;
    }
    
    if(sum == num) {
        printf("%d is an Armstrong number\n", num);
    } else {
        printf("%d is NOT an Armstrong number\n", num);
    }
    return 0;
}

View the complete For programs page.

Program Console Check whether a number is Armstrong Topic: C Vignaankosh.com
Execution Panel
Step 0/0
Console is empty.