In this article floating point expression is used such as 7.9E28 that means 7.9 x 1028.

Basically, Microsoft Small Basic is one of .NET framework language.  So, internally Decimal number  might be used.  Most of limit may come from Decimal number.

# Literal Numbers

This limitation is only for literal numbers but not for literal texts.  Following code shows this fact.

`n ````= ````1000000000000001`
`TextWindow``.``WriteLine``(``n````) ````' 1000000000000000`
`n ````= ````"1000000000000001"`
`TextWindow``.``WriteLine``(``n````) ````' 1000000000000001`

### Range

-1E15 = -1000000000000000 ≦ literal ≦ 1000000000000000 = 1E15

CSZ796

# Arithmetic Operators

Small Basic has 4 arithmetic operators - "+" (add), "-" (subtract), "*" (multiple) and "/" (divide).

## +

number1 + number2

### Range

number1 + number2 ≦ 79228162514264337593543950335 = 7.9E28

JFW812

## -

number1 - number2

N/A

## *

number1 * number2

N/A

## /

number1 / number2

### Range

number1 ≧ 0.0000000000000000000000000001 (= 1E-28) while number2 = 10

GRS792

# Math Functions

In Small Basic, Math object has 20 operations (functions).

Math.Abs(number)

N/A

## ArcCos

Math.ArcCos(cosValue)

### Range

-1 ≦ cosValue ≦ 1
0 ≦ Math.ArcCos(cosValue) ≦ Math.Pi

## ArcSin

Math.ArcSin(sinValue)

### Range

-1 ≦ sinValue ≦ 1
-Math.Pi / 2 ≦ Math.ArcSin(sinValue) ≦ Math.Pi / 2

## ArcTan

Math.ArcTan(tanValue)

### Range

-Math.Pi / 2 ＜ Math.ArcTan(tanValue) ＜ Math.Pi / 2
N/A ≦ tanValue ≦ N/A

## Ceiling

Math.Ceiling(number)

N/A

## Cos

Math.Cos(angle)

### Range

-1 ≦ Math.Cos(angle) ≦ 1

## Floor

Math.Floor(number)

N/A

## GetDegrees

Math.GetDegrees(angle)

### Range

-360 ＜ Math.GetDegrees(angle) ＜ 360

### Range

-2 * Math.Pi ＜ Math.GetRadians(angle) ＜ 2 * Math.Pi

## GetRandomNumber

Math.GetRandomNumber(maxNumber)

N/A

Math.Log(number)

0 ＜ number ≦ N/A

## Max

Math.Max(number1, number2)

### Range

Number of significant digits is limited to the return value of Math.Max ​​function.

DVN723

## Min

Math.Min(number1, number2)

N/A

## NaturalLog

Math.NaturalLog(number)

0 ＜ number ≦ N/A

## Power

Math.Power(baseNumber, exponent)

### Range

baseNumber ≦ 31622776 while exponent = 2

exponent ≦ 49 while baseNumber = 2

### Sample Program

FFW588 for Math.Power(31622776, 2)

## Remainder

Math.Remainder(dividend, divisor)

### Range

Math.Remainder(9007199254740992, 2)
dividend ≦ 9007199254740992 = 9E15 while divisor = 2
-divisor ＜ Math.Remainder(dividend, divisor) ＜ divisor

## Round

Math.Round(number)

N/A

## Sin

Math.Sin(angle)

### Range

-1 ≦ Math.Sin(angle) ≦ 1

## SquareRoot

Math.SquareRoot(number)

### Range

0 ≦ number ≦ 19807040628566084398385987584 = 1.9E28

Math.Tan(angle)

N/A

SFH478