[Tip] PHP als Taschenrechner und mehr
-
hi,
keine Frage sondern eine Lösung:
Ich habe für mein Linux nach einem Taschenrechner für die Konsole gesucht, der mehr kann als `bc`, auch gut mit KommaZahlen umgehen kann, schnell startet und schnell rechnet und der möglichst Variablen speichern kann...
Und da hab ich eine sehr nette Lösung gefunden: ich nutze einfach den PHP parser, der bei mir wegen WebAnwendungen schon installiert ist:#!/usr/bin/php <?php while($line=trim(fgets(STDIN))) { // Semikolon am Ende entscheidet, ob Asudruck ge-echo-ed wird if(substr($line,-1)!=';') eval('echo ('.$line.');'); else eval($line); fwrite(STDOUT, "\n"); } ?>
Das mit `chmod +x ./phpparse` und mit der ganzen Mächtigkeit von PHP:
$ ./phpparse 1+1 2 $a=42; echo $a; 42 $b=23; $a+$b 65 date('m.d.Y H:i:s') 08.05.2008 10:58:34 1e10/81 123456790.123 exit
Sorry wenn ich spamme, aber ich fand das gerade so toll...
Have a lot of fun...
-
Hä? Was davon kann den der bc nicht?
~ % bc 1+1 2 a=42 a 42 b=23 a+b 65 sin(pi) 0 ibase=16 1E10 7696 81 129 1E10/81 59.6589147286
Klar, date-Funktion hat er keine eingebaut, aber wozu auch? Ist ja nicht so, als könntest Du das nicht von date(1) oä bekommen.
-
Oh, btw, siehe auch:
http://en.wikipedia.org/wiki/Bc_programming_language
http://x-bc.sourceforge.net/
http://www.cyreksoft.yorks.com/gnu-bc/
-
Abgesehen davon, dass der BC sehr gut mit Fließkomma arbeiten kann (du kannst mit scale=x die Anzahl der Nachkommastellen einstellen) würde ich da eher eine interactive ruby/python Shell nutzen.
Die haben dann auch eine Command-History und mehr.