RosettaCodeData/Task/Euler-method/Craft-Basic/euler-method.basic

49 lines
447 B
Text
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
precision 4
let s = 2
gosub euler
let s = 5
gosub euler
let s = 10
gosub euler
end
sub euler
2026-02-01 16:33:20 -08:00
cls
cursor 1, 1
wait
print "step: ", s
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
let b = 100
let y = 100
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
for t = 0 to b step s
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
print t, " : ", y
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
let y = y + s * (-0.07 * (y - 20))
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
gosub delay
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
next t
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
alert "step ", s, " finished"
2023-07-01 11:58:00 -04:00
return
sub delay
2026-02-01 16:33:20 -08:00
let w = clock
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
do
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
wait
2023-07-01 11:58:00 -04:00
2026-02-01 16:33:20 -08:00
loop clock < w + 200
2023-07-01 11:58:00 -04:00
return