Data update
This commit is contained in:
parent
35bcdeebf8
commit
74c69a0df6
2427 changed files with 31826 additions and 3468 deletions
31
Task/Digital-root/S-BASIC/digital-root.basic
Normal file
31
Task/Digital-root/S-BASIC/digital-root.basic
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
rem - return the digital sum of n represented as a string
|
||||
function digitalsum(nstr = string) = integer
|
||||
var i, slen, sum = integer
|
||||
var ch = char
|
||||
slen = len(nstr)
|
||||
sum = 0
|
||||
for i = 1 to slen
|
||||
ch = mid(nstr, i, 1)
|
||||
rem - don't process leading or embedded spaces, etc.
|
||||
if ch >= '0' and ch <= '9' then
|
||||
sum = sum + (ch - '0')
|
||||
next i
|
||||
end = sum
|
||||
|
||||
var nstr = string
|
||||
var droot, pers = integer
|
||||
|
||||
0again
|
||||
rem - input1 does not advance to next line; control-C will exit
|
||||
input1 "What number"; nstr
|
||||
droot = digitalsum(nstr)
|
||||
pers = 1
|
||||
while droot > 9 do
|
||||
begin
|
||||
droot = digitalsum(str$(droot))
|
||||
pers = pers + 1
|
||||
end
|
||||
print " digital root ="; droot; " persistence ="; pers
|
||||
goto 0again
|
||||
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue