44 lines
1.2 KiB
Text
44 lines
1.2 KiB
Text
data 2, 100, true
|
|
data 1000, 4000, true
|
|
data 2, 1e4, false
|
|
data 2, 1e5, false
|
|
data 2, 1e6, false
|
|
data 2, 1e7, false
|
|
data 2, 1e8, false
|
|
REM data 2, 1e9, false // it takes a lot of time
|
|
data 0, 0, false
|
|
|
|
do
|
|
read start, ended, printable
|
|
if not start break
|
|
|
|
if start = 2 then
|
|
Print "eban numbers up to and including ", ended
|
|
else
|
|
Print "eban numbers between ", start, " and ", ended, " (inclusive):"
|
|
endif
|
|
count = 0
|
|
for i = start to ended step 2
|
|
b = int(i / 1000000000)
|
|
r = mod(i, 1000000000)
|
|
m = int(r / 1000000)
|
|
r = mod(i, 1000000)
|
|
t = int(r / 1000)
|
|
r = mod(r, 1000)
|
|
if m >= 30 and m <= 66 m = mod(m, 10)
|
|
if t >= 30 and t <= 66 t = mod(t, 10)
|
|
if r >= 30 and r <= 66 r = mod(r, 10)
|
|
if b = 0 or b = 2 or b = 4 or b = 6 then
|
|
if m = 0 or m = 2 or m = 4 or m = 6 then
|
|
if t = 0 or t = 2 or t = 4 or t = 6 then
|
|
if r = 0 or r = 2 or r = 4 or r = 6 then
|
|
if printable Print i;
|
|
count = count + 1
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
next
|
|
if printable Print
|
|
Print "count = ", count, "\n"
|
|
loop
|