/
example.script
66 lines (55 loc) 路 1.82 KB
/
example.script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
print "######################################";
print "# Demo for interpreter version " + VERSION + " #";
print "######################################";
print "";
// Usage:
// cargo run <shape> [...dimensions]
//
// shape cube | sphere
// dimensions (cube) <width> <height> <depth>
// (sphere) <radius>
//
// Example:
// cargo run cube 2 3 5
// cargo run sphere 12
// Constants
Pi = 3.14159265359;
if ARG_2 == nil {
print "Usage:";
print " " + ARG_0 + " " + ARG_1 + " <shape> [...dimensions]";
print "";
print " shape cube | sphere";
print " dimensions (cube) <width> <height> <depth>";
print " (sphere) <radius>";
print "";
}
if ARG_2 != nil {
if ARG_2 == "cube" {
width = ARG_3;
height = ARG_4;
depth = ARG_5;
if width == nil print "Please provide a width argument";
if height == nil print "Please provide a height argument";
if depth == nil print "Please provide a depth argument";
if width != nil if height != nil if depth != nil {
volume = width * height * depth;
print "The volume of a " + width + "m " +
"x " + height + "m " +
"x " + depth + "m " +
"cube " +
"is " + volume + "m^3";
}
}
if ARG_2 == "sphere" {
radius = ARG_3;
if radius == nil print "Please provide a radius argument";
if radius != nil {
volume = (4/3)*Pi*radius*radius;
print "The volume of a sphere with radius " + radius + "m " +
"is " + volume + "m^3";
}
}
if ARG_2 != "cube"
if ARG_2 != "sphere"
print "Unknown shape: " + ARG_2;
}