gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
move samples to 'alpha-mj' subfolder
[mjc2wsl.git] / samples / alpha-mj / eratos.mj
diff --git a/samples/alpha-mj/eratos.mj b/samples/alpha-mj/eratos.mj
new file mode 100644 (file)
index 0000000..92d28f8
--- /dev/null
@@ -0,0 +1,47 @@
+program Eratos\r
+\r
+       char[] sieve;\r
+       int max;                // maximum prime to be found\r
+       int npp;                // numbers per page\r
+\r
+{\r
+       void put(int x)\r
+       {\r
+               if (npp == 10) {\r
+                       print(chr(13)); \r
+                       print(chr(10)); \r
+                       npp = 0;\r
+               }\r
+               print(x, 5);\r
+               npp++;\r
+       }\r
+       \r
+       void found(int x)\r
+               int i;\r
+       {\r
+               put(x);\r
+               i = x;\r
+               while (i <= max) {\r
+                       sieve[i] = 'o'; i = i + x;\r
+               }\r
+       }\r
+\r
+       void main()\r
+               int i;\r
+       {\r
+               read(max);\r
+               npp = 0;\r
+               sieve = new char[max+1];\r
+               i = 0;\r
+               while (i <= max) {\r
+                       sieve[i] = 'x'; i++;\r
+               }\r
+               i = 2;\r
+               while (i <= max) {\r
+                       found(i);\r
+                       while(i <= max && sieve[i] == 'o') \r
+                               i++;\r
+               }\r
+       }\r
+\r
+}//test
\ No newline at end of file
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner