From e30be59794c933c9a9412472406055501baeb0d9 Mon Sep 17 00:00:00 2001 From: Toidinamai Date: Fri, 25 May 2007 09:51:46 +0000 Subject: [PATCH] Die Seite wurde neu angelegt: [http://en.wikipedia.org/wiki/Dc_%28Unix%29 dc] ist eine Programmiersprache, die auf fast jedem Unix-Rechner installiert ist. dc ist sehr minimalistisch und gerade daru... --- Dc.mw | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 Dc.mw diff --git a/Dc.mw b/Dc.mw new file mode 100644 index 00000000..afa13ab9 --- /dev/null +++ b/Dc.mw @@ -0,0 +1,76 @@ +[http://en.wikipedia.org/wiki/Dc_%28Unix%29 dc] ist eine Programmiersprache, die auf fast jedem Unix-Rechner installiert ist. +dc ist sehr minimalistisch und gerade darum macht es Spaß, darin zu programmieren. Bitte tragt eure +eigenen dc-Programme hier ein: + +==Range== + +Zum Warmwerden. Das folgende Programm gibt einfach aufeinanderfolgende Zahlen innerhalb der vorgegebenen Schranken aus: + +
+#!/usr/bin/env dc
+[Starting from? ]n?sa
+[Up to? ]n?sb
+
+# a is the lower bound
+# b is the upper bound
+
+[
+  # load lower bound
+  la
+  # print lower bound
+  p
+  # increment
+  1+
+  # store upper bound
+  dsa
+  # copy lower bound
+  lbdsb
+  # compare and recurse
+  >f
+]sf
+
+# call f
+lfdsfx
+
+ +Besonders schön sieht das dann als Einzeiler ohne Kommentare aus: + + [Starting from? ]n?sa[Up to? ]n?sb[lap1+dsalbdsb>f]sflfdsfx + + + +==Fibonacci== + +Ein Klassiker. Die [http://de.wikipedia.org/wiki/Fibonacci-Folge Fibonacci-Zahlen] sind rekursiv definiert: +die ersten beiden Zahlen sind 0 und 1, jede weitere ist die Summe ihrer beiden vorhergehenden. + +
+#!/usr/bin/env dc
+[How many fibonacci numbers should be computed? ]n?sa
+
+# start values
+0p 1p
+
+# counter
+1sb
+
+[
+  # save second summand
+  dsc
+  # add numbers on stack
+  +
+  # restore second summand as new first
+  lcr
+  # print 
+  p
+  # check counter and recurse
+  lb1+dsbladsa>f
+]sf
+
+# call f
+lfdsfx
+
+ +==Sieb des Eratosthenes== + +TBD