Skip to content

Commit 57b879b

Browse files
[Dana] Add evenChecker, sumOfDigits and reverseNumber programs
1 parent 5f7202a commit 57b879b

File tree

3 files changed

+65
-0
lines changed

3 files changed

+65
-0
lines changed

dana/programs/evenChecker.dana

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
def main
2+
3+
def even: n as int, result as ref int
4+
if n % 2 == 0:
5+
result := 1
6+
else:
7+
result := 0
8+
9+
var n is int
10+
var res is int
11+
12+
n := readInteger()
13+
14+
even: n, res
15+
16+
writeInteger: n
17+
writeString: " is "
18+
if res == 0:
19+
writeString: "even!"
20+
else:
21+
writeString: "odd!"
22+
writeString: "\n"

dana/programs/reverseNumber.dana

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
def main
2+
def reverse_number: n as int, result as ref int
3+
var reversed_n is int
4+
reversed_n := 0
5+
loop:
6+
if n > 0:
7+
reversed_n := reversed_n * 10 + n % 10
8+
n := n / 10
9+
else: break
10+
11+
result := reversed_n
12+
13+
var n is int
14+
var res is int
15+
16+
n := readInteger()
17+
reverse_number: n, res
18+
19+
writeString: "Reversed number: "
20+
writeInteger: res
21+
writeString: "\n"

dana/programs/sumOfDigits.dana

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
def main
2+
def sum_of_digits: n as int, result as ref int
3+
var sum_digits is int
4+
sum_digits := 0
5+
6+
loop:
7+
if n > 0:
8+
sum_digits := sum_digits + (n % 10)
9+
n := n / 10
10+
else: break
11+
12+
result := sum_digits
13+
14+
var n is int
15+
var res is int
16+
17+
n := readInteger()
18+
sum_of_digits: n, res
19+
20+
writeString: "Sum of digits: "
21+
writeInteger: res
22+
writeString: "\n"

0 commit comments

Comments
 (0)