gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
expanded sample size, first version
[mjc2wsl.git] / samples / alpha-mj-exp / sort-insert.mj
diff --git a/samples/alpha-mj-exp/sort-insert.mj b/samples/alpha-mj-exp/sort-insert.mj
new file mode 100644 (file)
index 0000000..d523f4a
--- /dev/null
@@ -0,0 +1,58 @@
+program sort {
+       
+       int[] load() 
+               int[] res;
+               int c,num,in; {
+               print('l');
+               print('?');
+               read(num);
+               res = new int[num];
+                c = 0;
+                while (c<num) {
+                        print(c);
+                        print('?');
+                        read(in);
+                        res[c] = in;
+                        c++;
+                }
+               return res;
+       }
+
+       void printar(int[] arr) 
+               int c;
+       {
+               c = 0;
+               while (c < len(arr)) {
+                       print(arr[c]);
+                       print(' ');
+                       c++;
+               }
+               print(chr(10)); 
+       }
+       
+       void sort(int[] arr)
+               int i,j,t;
+       {
+               i = 1;
+               while (i < len(arr)) {
+                       j = i;
+                       t = arr[j];
+                       while (j > 0 && t < arr[j-1]) {
+                               arr[j]=arr[j-1];
+                               j = j - 1;
+                       }
+                       arr[j] = t;
+                       i++;
+               }
+
+       }
+
+       void main() 
+               int[] arr;
+       {
+               arr = load();
+               printar(arr);   
+               sort(arr);
+               printar(arr);
+       }
+}
\ No newline at end of file
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner