How to resolve the algorithm Disarium numbers step by step in the Ada programming language
Published on 12 May 2024 09:40 PM
How to resolve the algorithm Disarium numbers step by step in the Ada programming language
Table of Contents
Problem Statement
A Disarium number is an integer where the sum of each digit raised to the power of its position in the number, is equal to the number.
135 is a Disarium number: 11 + 32 + 53 == 1 + 9 + 125 == 135 There are a finite number of Disarium numbers.
Let's start with the solution:
Step by Step solution about How to resolve the algorithm Disarium numbers step by step in the Ada programming language
Source code in the ada programming language
with Ada.Text_IO;
procedure Disarium_Numbers is
Disarium_Count : constant := 19;
function Is_Disarium (N : Natural) return Boolean is
Nn : Natural := N;
Pos : Natural := 0;
Sum : Natural := 0;
begin
while Nn /= 0 loop
Nn := Nn / 10;
Pos := Pos + 1;
end loop;
Nn := N;
while Nn /= 0 loop
Sum := Sum + (Nn mod 10) ** Pos;
Nn := Nn / 10;
Pos := Pos - 1;
end loop;
return N = Sum;
end Is_Disarium;
Count : Natural := 0;
begin
for N in 0 .. Natural'Last loop
if Is_Disarium (N) then
Count := Count + 1;
Ada.Text_IO.Put (N'Image);
end if;
exit when Count = Disarium_Count;
end loop;
end Disarium_Numbers;
You may also check:How to resolve the algorithm Identity matrix step by step in the PL/I programming language
You may also check:How to resolve the algorithm Solve the no connection puzzle step by step in the Picat programming language
You may also check:How to resolve the algorithm Averages/Median step by step in the Pascal programming language
You may also check:How to resolve the algorithm Factors of an integer step by step in the FALSE programming language
You may also check:How to resolve the algorithm Ethiopian multiplication step by step in the Craft Basic programming language