Armstrong Numbers with QBasic


In the world of math, there are fascinating things that grab the attention of both beginners and experts. One of these intriguing ideas is Armstrong numbers, also called narcissistic numbers or pluperfect digital invariants. These special numbers have a unique quality that connects them to both number theory and computer programming. In this blog post, we’ll dive into the interesting world of Armstrong numbers and see how we can use QBasic, an easy-to-use programming language, to find these special math numbers.

Understanding Armstrong Numbers

An Armstrong number, also called a narcissistic number, is a special kind of number. It’s unique because it’s equal to the sum of its digits, with each digit raised to a power based on how many digits there are in the number. In simpler words, if we have a number with a certain amount of digits, when we add up each digit raised to that same amount of digits, we should get back the original number itself. Let’s look at an example to make this clearer:

Take the number 153.

  • It has 3 digits (1, 5, and 3).
  • Raise each digit to the power of 3 (since there are 3 digits): 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153.

In this case, 153 is an Armstrong number because the sum of the digits raised to the power of the number of digits (3) equals the original number itself.

Using QBasic to Find Armstrong Numbers

QBasic is a type of computer language that’s like a modern version of an older language called BASIC. It’s really good for playing around with math ideas, like Armstrong numbers. We’re going to show you how to make a program using QBasic that can find Armstrong numbers in a certain range of numbers. Here’s a simple guide to doing that:

Step 1: Get User Input
Start by prompting the user to enter a range within which you want to find Armstrong numbers.

Step 2: Iterate Through the Range
Create a loop that iterates through the numbers within the specified range.

Step 3: Calculate the Sum of Digits Raised to the Power
For each number, calculate the sum of its digits raised to the power of the number of digits.

Step 4: Compare and Display the Result
Compare the calculated sum with the original number. If they match, the number is an Armstrong number and should be displayed.

Step 5: Repeat
Continue this process for all numbers within the specified range.

' QBasic program to find Armstrong numbers within a range

SCREEN 12  ' Set the screen mode

CLS  ' Clear the screen

' Prompt the user to enter the range
INPUT "Enter the starting number: ", startNum
INPUT "Enter the ending number: ", endNum

PRINT "Armstrong numbers between "; startNum; " and "; endNum; ":"

' Loop through the range
FOR num = startNum TO endNum
    temp = num
    sum = 0
    numDigits = INT(LOG10(num)) + 1  ' Calculate the number of digits

    ' Calculate the sum of digits raised to the power
    DO WHILE temp > 0
        digit = temp MOD 10
        sum = sum + digit ^ numDigits
        temp = INT(temp / 10)

    ' Check if the number is an Armstrong number
    IF sum = num THEN
        PRINT num;
    END IF

' Wait for user input before ending the program
INPUT "Press any key to exit...", key$

Benefits of Exploring Armstrong Numbers with QBasic

  1. Simplicity: QBasic’s straightforward syntax and structure make it an excellent choice for beginners to understand the concept of Armstrong numbers and implement them.
  2. Educational Value: Writing a QBasic program to find Armstrong numbers enhances one’s understanding of loops, conditional statements, and basic arithmetic operations.
  3. Visual Learning: QBasic provides an interactive environment where users can witness the program’s execution step by step, making it easier to comprehend the logic behind Armstrong numbers.


Discovering things about numbers, like Armstrong numbers, can be really interesting and enjoyable. We can use programming to make tools that help us find these special number patterns. QBasic is a simple computer language that makes it easy for beginners to explore these ideas, even if you’re new to both programming and numbers. So, whether you really like math or just like trying out new computer stuff, using QBasic to find Armstrong numbers is a cool adventure that connects math and computers in a cool way.

Leave a Reply

Your email address will not be published. Required fields are marked *

Previous Post

QBASIC Abbreviation

Next Post

Discovering Armstrong Numbers with QBASIC

Related Posts