Skip to content

Commit

Permalink
[Examples] added examples
Browse files Browse the repository at this point in the history
  • Loading branch information
isuckatcs committed Jul 3, 2024
1 parent 4b2560a commit 9aa3b81
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
.cache
build
*.al
!examples/*.al
15 changes: 15 additions & 0 deletions examples/fibonacci_sequence.al
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
fn fib(n: number): number {
if n == 0.0 || n == 1.0 {
return n;
}

return fib(n - 1.0) + fib(n - 2.0);
}

fn main(): void {
var i: number = 0.0;
while i < 20.0 {
print(fib(i));
i = i + 1.0;
}
}
45 changes: 45 additions & 0 deletions examples/prime_numbers.al
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
fn divides(n: number, divisor: number): number {
var i: number = 1.0;
while !(i > n) {
let d: number = divisor * i;

if d == n {
return 1.0;
}

i = i + 1.0;
}

return 0.0;
}

fn isPrime(x: number): number {
if x == 0.0 || x == 1.0 {
return 0.0;
}

var i: number = 2.0;
while !(i > x / 2.0) {
if divides(x, i) {
return 0.0;
}

i = i + 1.0;
}

return 1.0;
}

fn main(): void {
var n: number = 1.0;
var cnt: number = 0.0;

while cnt < 10.0 {
if isPrime(n) {
print(n);
cnt = cnt + 1.0;
}

n = n + 1.0;
}
}

0 comments on commit 9aa3b81

Please sign in to comment.