summaryrefslogtreecommitdiffstats
path: root/src/CBot/tests/scenarios/fibo.txt
diff options
context:
space:
mode:
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