summaryrefslogtreecommitdiffstats
path: root/src/CBot/tests/scenarios/fibo.txt
diff options
context:
space:
mode:
authorMichał Konopacki <konopacki.m@gmail.com>2012-08-09 22:13:10 +0200
committerMichał Konopacki <konopacki.m@gmail.com>2012-08-09 22:13:10 +0200
commit7b03a6a2acb9c7ddbae663b27be4b223f984cfcd (patch)
tree29855d977b5b19eac31723e490773bb30e10efae /src/CBot/tests/scenarios/fibo.txt
parentef7e297efe63a45cd3a821c171d98d0681c714ff (diff)
downloadcolobot-7b03a6a2acb9c7ddbae663b27be4b223f984cfcd.tar.gz
colobot-7b03a6a2acb9c7ddbae663b27be4b223f984cfcd.tar.bz2
colobot-7b03a6a2acb9c7ddbae663b27be4b223f984cfcd.zip
CBot console interpreter
Based on program found in sources
Diffstat (limited to 'src/CBot/tests/scenarios/fibo.txt')
-rw-r--r--src/CBot/tests/scenarios/fibo.txt25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/CBot/tests/scenarios/fibo.txt b/src/CBot/tests/scenarios/fibo.txt
new file mode 100644
index 0000000..88f5357
--- /dev/null
+++ b/src/CBot/tests/scenarios/fibo.txt
@@ -0,0 +1,25 @@
+
+extern public int Fibo( int n, boolean b )
+{
+ if ( n < 2 ) return n;
+ int a = Fibo(n-1, b) + Fibo(n-2, false);
+ if ( b ) print (n + "=" + a);
+ return a;
+}
+
+extern public void t()
+{
+ Fibo( 23, true);
+}
+
+extern public void tt()
+{
+ t();
+}
+
+// cette routine n'est évidemment pas du tout obtimisée
+// c'est même un très mauvais exemple de programmation récursive
+
+// pour un test de durée, Fibo(23, true) prend
+// en mode Debug 67 secondes
+// en mode Release 8 secondes