home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
basic
/
baswiz18.zip
/
BW$BAS.ZIP
/
BCDPOWER.BAS
< prev
next >
Wrap
BASIC Source File
|
1992-08-29
|
1KB
|
35 lines
' +----------------------------------------------------------------------+
' | |
' | BASWIZ Copyright (c) 1990-1992 Thomas G. Hanlin III |
' | |
' | The BASIC Wizard's Library |
' | |
' +----------------------------------------------------------------------+
DECLARE FUNCTION BCDAbs$ (Nr AS STRING)
DECLARE FUNCTION BCDMul$ (Nr1 AS STRING, Nr2 AS STRING)
DECLARE FUNCTION BCDSet$ (NumSt$)
DEFINT A-Z
FUNCTION BCDPower$ (Nr AS STRING, Power)
IF Power <= 0 THEN
BCDPower$ = BCDSet$("1")
ELSE
Sign$ = LEFT$(Nr, 1)
P = Power
Result$ = BCDSet$("1")
PSeq$ = BCDAbs$(Nr)
DO WHILE P > 0
IF P AND 1 THEN Result$ = BCDMul$(Result$, PSeq$)
P = P \ 2
PSeq$ = BCDMul$(PSeq$, PSeq$)
LOOP
IF Power AND 1 THEN
BCDPower$ = Sign$ + MID$(Result$, 2)
ELSE
BCDPower$ = Result$
END IF
END IF
END FUNCTION