Real constants and functions: Difference between revisions

Added Applesoft BASIC, Chipmunk Basic, Gambas, GW-BASIC, QBasic, MSX Basic and XBasic
(Add Plain English)
(Added Applesoft BASIC, Chipmunk Basic, Gambas, GW-BASIC, QBasic, MSX Basic and XBasic)
Line 415:
 
=={{header|BASIC}}==
==={{header|QBasic}}===
{{works with|QBasic|1.1}}
{{works with|QuickBasic|4.5}}
<syntaxhighlight lang="qbasic">abs(x) 'absoluteceiling and floor easily implemented as valuefunctions.
'e & pi not available- calculate as shown.
sqr(x) 'square root
 
exp(x) 'exponential
FUNCTION ceiling (x)
log(x) 'natural logarithm
IF x < 0 THEN ceiling = INT(x) ELSE ceiling = INT(x) + 1
x ^ y 'power
END FUNCTION
'floor, ceiling, e, and pi not available</syntaxhighlight>
 
FUNCTION floor (x)
IF x > 0 THEN
floor = INT(x)
ELSE
IF x <> INT(x) THEN floor = INT(x) - 1 ELSE floor = INT(x)
END IF
END FUNCTION
 
PRINT "e = "; EXP(1) ' e not available
PRINT "PI = "; 4 * ATN(1) ' pi not available
x = 12.345: y = 1.23
PRINT "sqrt = "; SQR(x), x ^ .5 ' square root- NB the unusual name
PRINT "ln = "; LOG(x) ' natural logarithm base e
PRINT "log10 = "; LOG(x) / 2.303 ' base 10 logarithm
PRINT "log = "; LOG(x) / LOG(y) ' arbitrary base logarithm
PRINT "exp = "; EXP(x) ' exponential
PRINT "abs = "; ABS(-x) ' absolute value
PRINT "floor = "; floor(x) ' floor
PRINT "ceil = "; ceiling(x) ' ceiling
PRINT "power = "; x ^ y ' power
END</syntaxhighlight>
 
==={{header|Applesoft BASIC}}===
{{works with|Chipmunk Basic}}
{{works with|GW-BASIC}}
{{works with|MSX Basic}}
{{works with|QBasic}}
<syntaxhighlight lang="qbasic">100 HOME : REM 10 CLS for GW-BASIC or MSX Basic or QBasic
110 PRINT "e = ";EXP(1) :REM e not available
120 PRINT "PI = ";4 * ATN(1) :REM pi not available
130 X = 12.345
140 Y = 1.23
150 PRINT "sqrt = ";SQR(X) :REM square root
160 PRINT "ln = ";LOG(X) :REM natural logarithm base e
170 PRINT "log10 = ";LOG(X)/LOG(10) :REM base 10 logarithm
180 PRINT "log = ";LOG(X)/LOG(Y) :REM arbitrary base logarithm
190 PRINT "exp = ";EXP(X) :REM exponential
200 PRINT "abs = ";ABS(-X) :REM absolute value
210 PRINT "floor = "; :REM floor not available
220 IF X > 0 THEN PRINT INT(X)
230 IF X <= 0 AND X <> INT(X) THEN PRINT INT(X)-1
240 IF X <= 0 AND X = INT(X) THEN PRINT INT(X)
250 PRINT "ceil = "; :REM ceil not available
260 IF X < 0 THEN PRINT INT(X)
270 IF X >= 0 THEN PRINT INT(X)+1
280 PRINT "power = ";X^Y :REM power
290 END</syntaxhighlight>
 
==={{header|Chipmunk Basic}}===
{{works with|Chipmunk Basic|3.6.4}}
<syntaxhighlight lang="qbasic">100 cls
110 print "e = ";exp(1)' e not available
120 print "PI = ";4*arctan(1)' pi not available
130 x = 12.345
140 y = 1.23
150 print "sqrt = ";sqr(x)' square root
160 print "ln = ";log(x)' natural logarithm base e
170 print "log10 = ";log(x)/log(10)' base 10 logarithm
180 print "log = ";log(x)/log(y)' arbitrary base logarithm
190 print "exp = ";exp(x)' exponential
200 print "abs = ";abs(-x)' absolute value
210 print "floor = ";floor(x)' floor
220 print "ceil = "; : ceil(x)' ceil easily implemented as function
230 print "power = ";x^y ' power
240 end
250 sub ceil(x)
260 if x < 0 then print int(x) else print int(x)+1
270 end sub</syntaxhighlight>
 
==={{header|Gambas}}===
<syntaxhighlight lang="vbnet">Public Sub Main()
Dim e As Float = Exp(1)
Print "e = "; e ' e not available
Print "π = "; Pi ' pi
Dim x As Float = 12.345
Dim y As Float = 1.23
Print "sqrt = "; Sqr(x)' square root
Print "ln = "; Log(x)' natural logarithm base e
Print "log10 = "; Log(x) / Log(10) ' base 10 logarithm
Print "log = "; Log(x) / Log(y)' arbitrary base logarithm
Print "exp = "; Exp(x) ' exponential
Print "abs = "; Abs(-x)' absolute value
Print "floor = "; Floor(x)' floor
Print "ceil = "; Ceil(x)' ceil
Print "power = "; x ^ y ' power
End</syntaxhighlight>
 
==={{header|GW-BASIC}}===
{{works with|BASICA}}
{{works with|Chipmunk Basic}}
{{works with|MSX_BASIC}}
{{works with|QBasic}}
{{works with|PC-BASIC|any}}
<syntaxhighlight lang="qbasic">100 CLS
110 PRINT "e = "; EXP(1) ' e not available
120 PRINT "PI = "; 4 * ATN(1) ' pi not available
130 X = 12.345
140 Y = 1.23
150 PRINT "sqrt = "; SQR(X) ' square root
160 PRINT "ln = "; LOG(X) ' natural logarithm base e
170 PRINT "log10 = "; LOG(X)/LOG(10) ' base 10 logarithm
180 PRINT "log = "; LOG(X)/LOG(Y) ' arbitrary base logarithm
190 PRINT "exp = "; EXP(X) ' exponential
200 PRINT "abs = "; ABS(-X) ' absolute value
210 PRINT "floor = "; floor(X) ' floor
220 PRINT "ceil = "; : ' ceil not available
230 IF X < 0 THEN PRINT INT(X) ELSE PRINT INT(X)+1
240 PRINT "power = "; X ^Y ' power
250 END</syntaxhighlight>
 
==={{header|MSX Basic}}===
{{works with|MSX Basic|any}}
{{works with|Chipmunk Basic}}
<syntaxhighlight lang="qbasic">100 CLS
110 E = EXP(1)
120 PRINT "e = "; E ' e not available
130 PI = 4 * ATN(1)
140 PRINT "PI = "; PI ' pi not available
150 X = 12.345
160 Y = 1.23
170 PRINT "sqrt = "; SQR(X) ' square root
180 PRINT "ln = "; LOG(X) ' natural logarithm base e
190 PRINT "log10 = "; LOG(X)/LOG(10) ' base 10 logarithm
200 PRINT "log = "; LOG(X)/LOG(Y) ' arbitrary base logarithm
210 PRINT "exp = "; EXP(X) ' exponential
220 PRINT "abs = "; ABS(-X) ' absolute value
230 PRINT "floor = "; floor(X) ' floor
240 PRINT "ceil = "; : ' ceil not available
250 IF X < 0 THEN PRINT INT(X) ELSE PRINT INT(X)+1
260 PRINT "power = "; X ^Y ' power
270 END
 
==={{header|XBasic}}===
{{works with|Windows XBasic}}
<syntaxhighlight lang="qbasic">PROGRAM "progname"
VERSION "0.0000"
 
IMPORT "xma"
 
DECLARE FUNCTION Entry ()
DECLARE FUNCTION Ceil (x)
DECLARE FUNCTION Floor (x)
 
FUNCTION Entry ()
DOUBLE e, pi, x, y
 
e = EXP(1)
PRINT "e = "; e ' e not available
pi = 4 * ATAN(1)
PRINT "pi = "; pi ' pi not available
 
x = 12.345
y = 1.23
 
PRINT "sqrt = "; SQRT (x) ' square root
PRINT "ln = "; LOG (x) ' natural logarithm base e
PRINT "log10 = "; LOG10 (x) ' base 10 logarithm
PRINT "log = "; LOG (x) / LOG (y) ' arbitrary base logarithm
PRINT "exp = "; EXP (x) ' exponential
PRINT "abs = "; ABS (-x) ' absolute value
PRINT "Floor = "; Floor (x) ' Floor easily implemented as functions
PRINT "Ceil = "; Ceil (x) ' Ceil easily implemented as functions
PRINT "power = "; x ** y ' power
END FUNCTION
 
FUNCTION Ceil (x)
IF x < 0 THEN RETURN INT(x) ELSE RETURN INT(x) + 1
END FUNCTION
 
FUNCTION Floor (x)
IF x > 0 THEN
RETURN INT(x)
ELSE
IF x <> INT(x) THEN RETURN INT(x) - 1 ELSE RETURN INT(x)
END IF
END FUNCTION
END PROGRAM</syntaxhighlight>
 
==={{header|IS-BASIC}}===
2,124

edits