Jump to content

Sum of square and cube digits of an integer are primes: Difference between revisions

Added Algol W
(Added PL0)
(Added Algol W)
Line 45:
<pre>
16 17 25 28 34 37 47 52 64
</pre>
 
=={{header|ALGOL W}}==
<syntaxhighlight lang="algolw">
begin
integer procedure digitSum( integer value n ) ;
begin
integer sum, v, vOver10;
sum := 0;
v := n;
while v > 0 do begin
vover10 := v div 10;
sum := sum + ( v - ( vover10 * 10 ) );
v := vover10
end while_v_gt_0 ;
sum
end digitSum ;
logical procedure isPrime( integer value n ) ;
if n < 2 then false
else if not odd( n ) then n = 2
else begin
logical prime;
integer p;
prime := true;
p := 3;
while p * p <= n and prime do begin
prime := n rem p not = 0;
p := p + 2;
end while_p2_le_n_and_prime ;
prime
end isPrime ;
for i := 1 until 99 do begin
integer i2;
i2 := i * i;
if isPrime( digitSum( i2 ) ) then begin;
if isPrime( digitSum( i2 * i ) ) then writeon( i_w := 1, s_w := 1, i )
end
end
end.
</syntaxhighlight>
{{out}}
<pre>
16 17 25 28 34 37 47 52 64
</pre>
 
Line 51 ⟶ 94:
{{out}}
<pre>16 17 25 28 34 37 47 52 64</pre>
 
=={{header|Arturo}}==
 
3,045

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.