Perl CGI script to find Armstrong number or not

In this post, you are going to see how to write a Perl CGI script to find the Entered number is Armstrong or not.

The same program is written in other languages such as Java, Python, C, C#, and PHP, just give a search on this site, use “Armstrong” as the keyword.

#!/usr/bin/perl -w
##these two lines are used to display errors on browser. If you don't want, you can remove these
use CGI;
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);
##error display ends
 
##below line is important if you want to display the result in browser
print "Content-type: text/html\n\n";

##HTML Part
print "<html>
<head><title>Perl CGI Script to find Armstrong Number</title></head>
<body>
    <h3>Web Based Perl script to Find Armstrong Number - <a href='http://www.tutorialsmade.com/'>Tutorialsmade.com</a></h3>
	<form action='' method='post'>
        <label>Enter a number to check <label>
        <input type='text' name='number' />
        <input type='submit' value='Submit' />
    </form>
</body>
</html>";
	
 
## here is the perl logic starts
my $q = new CGI;
## check if a form is submitted with $q->param()
if($q->param())
{
	$number = $q->param('number');
	$temp 	= $number;
	$sum 	= 0;

	##loop till $temp becomes 0
	while($temp != 0)
	{
		$rem  = $temp % 10; ##find the reminder
		$sum  = $sum + ($rem * $rem * $rem); ##add $sum and $rem x 3
		$temp = $temp / 10; ##find the quotient for the next loop
	}
	##if entered number and $sum is same then it is armstrong number
	if($number == $sum)
	{
		print "<p>Armstrong Number</p>";
	}
	else
	{
		print "<p>Not an Armstrong Number</p>";
	}
}
 

Read the comments in the script to understand.

Enjoy the day!

Leave a Comment

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

Scroll to Top