Skip to content

Commit 4264075

Browse files
committed
Final evaluation on problems
1 parent 620eb64 commit 4264075

File tree

2 files changed

+24
-16
lines changed

2 files changed

+24
-16
lines changed

examples/problems/P5.gph

-2
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,3 @@ a, b, c : int = 200000, 3000, 0;
1010
mdc(a,b,c);
1111

1212
println c;
13-
14-

examples/problems/P6.gph

+24-14
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,10 @@ sub insert(t : BST&; new_value : int) {
2424
side : char;
2525
if (new_value < curr{value})
2626
side = left;
27-
else
27+
else if (new_value > curr{value})
2828
side = right;
29+
else
30+
break;
2931
side_child : [Node] = [n for n over t{tree}<curr> when (n{child}|side|)];
3032
if (side_child == []) {
3133
new : Node = Node{value=new_value};
@@ -39,8 +41,6 @@ sub insert(t : BST&; new_value : int) {
3941
}
4042
}
4143

42-
43-
4444
sub print_inorder(t : BST&) {
4545
stack : [Node] = [];
4646
top : int = -1;
@@ -113,20 +113,30 @@ sub maximum(t : BST&) : (int, int) {
113113
}
114114

115115
t1 : BST;
116+
s : string;
117+
118+
println "Integer value to be inserted:";
119+
read s;
120+
121+
while (s != "") {
122+
insert(t1, s@int);
123+
124+
println "inorder traversal: ";
125+
print_inorder(t1);
116126

117-
for n over [0, -10, 6, -20, 5]
118-
insert(t1, n);
127+
println "breadth first traversal: ";
128+
print_levels(t1);
119129

120-
println "inorder traversal: ";
121-
print_inorder(t1);
130+
min, max : (int, int) = minimum(t1), maximum(t1);
122131

123-
println "breadth first traversal: ";
124-
print_levels(t1);
132+
print "min: " + min\0\@string;
133+
println " (level " + min\1\@string + ")";
125134

126-
min, max : (int, int) = minimum(t1), maximum(t1);
135+
print "max: " + max\0\@string;
136+
println " (level " + max\1\@string + ")";
127137

128-
print "min: " + min\0\@string;
129-
println " (level " + min\1\@string + ")";
138+
println "";
130139

131-
print "max: " + max\0\@string;
132-
println " (level " + max\1\@string + ")";
140+
println "Integer value to be inserted:";
141+
read s;
142+
}

0 commit comments

Comments
 (0)