Data update
This commit is contained in:
parent
35bcdeebf8
commit
74c69a0df6
2427 changed files with 31826 additions and 3468 deletions
29
Task/Disarium-numbers/Amazing-Hopper/disarium-numbers.hopper
Normal file
29
Task/Disarium-numbers/Amazing-Hopper/disarium-numbers.hopper
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
#include <basico.h>
|
||||
|
||||
#proto encontrarunDisariumpara(_X_)
|
||||
#synon _encontrarunDisariumpara siencontréunDisarium
|
||||
|
||||
algoritmo
|
||||
decimales '0'
|
||||
iterar para ( n=3000000, n, --n )
|
||||
si encontré un Disarium 'n', entonces{
|
||||
imprimir( #(utf8("El número ")),n," es Disarium\n")
|
||||
}
|
||||
siguiente
|
||||
terminar
|
||||
|
||||
subrutinas
|
||||
|
||||
encontrar un Disarium para (n)
|
||||
|
||||
i=0
|
||||
n, obtener tamaño parte entera, mover a 'i'
|
||||
m=0, tn=n, d=0
|
||||
iterar mientras ( tn )
|
||||
último dígito de 'tn', mover a 'd,tn'
|
||||
d, elevado a 'i', más 'm'
|
||||
mover a 'm'
|
||||
--i
|
||||
reiterar
|
||||
|
||||
retornar ' #(m==n) '
|
||||
26
Task/Disarium-numbers/Chipmunk-Basic/disarium-numbers.basic
Normal file
26
Task/Disarium-numbers/Chipmunk-Basic/disarium-numbers.basic
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
100 cls
|
||||
110 sub isdisarium(n)
|
||||
120 digitos = len(str$(n))
|
||||
130 suma = 0
|
||||
140 x = n
|
||||
150 while x <> 0
|
||||
160 r = (x mod 10)
|
||||
170 suma = suma+(r^digitos)
|
||||
180 digitos = digitos-1
|
||||
190 x = int(x/10)
|
||||
200 wend
|
||||
210 if suma = n then isdisarium = true else isdisarium = false
|
||||
220 end sub
|
||||
230 '
|
||||
240 limite = 19
|
||||
250 cnt = 0
|
||||
260 n = 0
|
||||
270 print "The first ";limite;" Disarium numbers are:"
|
||||
280 while cnt < limite
|
||||
290 if isdisarium(n) then
|
||||
300 print n;" ";
|
||||
310 cnt = cnt+1
|
||||
320 endif
|
||||
330 n = n+1
|
||||
340 wend
|
||||
350 end
|
||||
18
Task/Disarium-numbers/EasyLang/disarium-numbers.easy
Normal file
18
Task/Disarium-numbers/EasyLang/disarium-numbers.easy
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
func disarium x .
|
||||
h = x
|
||||
while h > 0
|
||||
d[] &= h mod 10
|
||||
h = h div 10
|
||||
.
|
||||
for i = 1 to len d[]
|
||||
h += pow d[i] (len d[] - i + 1)
|
||||
.
|
||||
return if h = x
|
||||
.
|
||||
while count < 19
|
||||
if disarium n = 1
|
||||
count += 1
|
||||
print n
|
||||
.
|
||||
n += 1
|
||||
.
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
digits=: 10 #.inv ]
|
||||
disarium=: (= (+/ .^ #\)@digits)"0
|
||||
I.disarium i.1e4
|
||||
0 1 2 3 4 5 6 7 8 9 89 135 175 518 598 1306 1676 2427
|
||||
digits=: "."0@":
|
||||
disarium=: = (+/@:^ #\)@digits"0
|
||||
|
||||
I. disarium i. 27e5
|
||||
0 1 2 3 4 5 6 7 8 9 89 135 175 518 598 1306 1676 2427 2646798
|
||||
|
|
|
|||
20
Task/Disarium-numbers/MiniScript/disarium-numbers.mini
Normal file
20
Task/Disarium-numbers/MiniScript/disarium-numbers.mini
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
isDisarium = function(n)
|
||||
num = n
|
||||
sum = 0
|
||||
if num == 0 then return true
|
||||
for i in range(ceil(log(n)), 1)
|
||||
sum += (n % 10) ^ i
|
||||
n = floor(n / 10)
|
||||
end for
|
||||
return num == sum
|
||||
end function
|
||||
|
||||
foundCnt = 0
|
||||
cnt = 0
|
||||
while foundCnt < 19
|
||||
if isDisarium(cnt) then
|
||||
foundCnt += 1
|
||||
print cnt
|
||||
end if
|
||||
cnt +=1
|
||||
end while
|
||||
13
Task/Disarium-numbers/SETL/disarium-numbers.setl
Normal file
13
Task/Disarium-numbers/SETL/disarium-numbers.setl
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
program disarium_numbers;
|
||||
loop for n in [0..2700000] | disarium n do
|
||||
print(n);
|
||||
end loop;
|
||||
|
||||
op disarium(n);
|
||||
k := n;
|
||||
digits := [[k mod 10, k div:= 10](1) : until k=0];
|
||||
p := #digits+1;
|
||||
powsum := +/[d ** (p -:= 1) : d in digits];
|
||||
return powsum = n;
|
||||
end op;
|
||||
end program;
|
||||
Loading…
Add table
Add a link
Reference in a new issue