ps3: init

This commit is contained in:
2026-02-14 21:10:47 +01:00
parent 5e0f74c5b9
commit 3e99c78d9b
24 changed files with 1069 additions and 0 deletions
+14
View File
@@ -0,0 +1,14 @@
var array[3], other[20]
func sum() {
return array[0] + array[1] + array[2]
}
func main() {
array[0] = 5
array[1] = 1
array[2] = array[1]
other[sum()] = sum()
println("Should be 7:", other[7])
}
+27
View File
@@ -0,0 +1,27 @@
func main(a, b) {
if (1)
println("Always")
if (0)
println("Never")
else
println("This, however!")
if (a > b) {
println(a, ">", b)
}
else if (a < b) {
println(a, "<", b)
}
else {
println(a, "=", b)
}
// Now test dangling else
if (a)
if (b)
println("a & b")
else
println("a, but not b")
}
+34
View File
@@ -0,0 +1,34 @@
func main() {
var a = 1
var b = 4 - 1 - 1
var c = -a * b + 4 * a * 1 + 2
a = a / 2 + 1
if (a * a < b + c)
println("Yes")
if (a == 1 or b == 2)
println("Either!")
if (a == 1 and b == 2)
println("Both!")
if (!a == 0)
println("Yup")
if (a <= b == b > a)
print("Alawys!")
if (a <= b != a >= b)
println("a != b")
if (a == b == (a != b))
println("Never!")
a = a > 4 or b < 2 ? a + 4 : b - 2
c = (a <= b) + --(a >= b)
return c
}
@@ -0,0 +1,12 @@
func main() {
var localVariable
globalVariable = 10
localVariable = 3
println("Global:", globalVariable, " local:", localVariable)
}
// Global variables can be declared anywhere in the file
var globalVariable
@@ -0,0 +1,16 @@
func main() {
print("Should be 7:", identity(first(second(5, 7), first(2, 9))))
}
func identity(argument) {
return argument
}
func first(a, b) {
return a
}
func second(a, b) {
return b
}
@@ -0,0 +1,5 @@
func main() {
print("Hello ")
println("World!")
}
+30
View File
@@ -0,0 +1,30 @@
var global, myArray[10]
func main() {
var a, b = 2
a = 5
var c
global = 3
// A block is itself a statement
{
var d = a + b * c
println("d:", d)
}
if (1) {
var x
x = a*b*c
if (x > 0) {
// Declare a new x, shadowing the outer x
var x
x = a + global
} else {
x = a
myArray[global] = 2
}
println("x:", x)
}
}
+20
View File
@@ -0,0 +1,20 @@
func callMe(i) {
println("i is now", i)
}
func main(start, end) {
var counter = start
while (counter < end) {
callMe(counter)
counter = counter + 1
}
// Go down again using while 1 + break
while (1) {
counter = counter - 1
if (counter < start)
break
callMe(counter)
}
}