Count in factors: Difference between revisions
Count in factors in various BASIC dialents (BASIC256, True BASIC and Yabasic)
(Added solution for Action!) |
(Count in factors in various BASIC dialents (BASIC256, True BASIC and Yabasic)) |
||
Line 873:
6358=2*11*17*17
</pre>
=={{header|BASIC}}==
==={{header|BASIC256}}===
{{trans|Run BASIC}}
<lang freebasic>for i = 1 to 20
print i; " = "; factorial$(i)
next i
end
function factorial$ (num)
factor$ = "" : x$ = ""
if num = 1 then return "1"
fct = 2
while fct <= num
if (num mod fct) = 0 then
factor$ += x$ + string(fct)
x$ = " x "
num /= fct
else
fct += 1
end if
end while
return factor$
end function</lang>
==={{header|True BASIC}}===
{{trans|Run BASIC}}
<lang qbasic>FUNCTION factorial$ (num)
LET f$ = ""
LET x$ = ""
IF num = 1 THEN LET f$ = "1"
LET fct = 2
DO WHILE fct <= num
IF MOD(num, fct) = 0 THEN
LET f$ = f$ & x$ & STR$(fct)
LET x$ = " x "
LET num = num / fct
ELSE
LET fct = fct + 1
END IF
LOOP
LET factorial$ = f$
END FUNCTION
FOR i = 1 TO 20
PRINT i; "= "; factorial$(i)
NEXT i
END</lang>
==={{header|Yabasic}}===
{{trans|Run BASIC}}
<lang freebasic>for i = 1 to 20
print i, " = ", factorial$(i)
next i
end
sub factorial$ (num)
local f$, x$
f$ = "" : x$ = ""
if num = 1 return "1"
fct = 2
while fct <= num
if mod(num, fct) = 0 then
f$ = f$ + x$ + str$(fct)
x$ = " x "
num = num / fct
else
fct = fct + 1
end if
wend
return f$
end sub</lang>
=={{header|BBC BASIC}}==
|