[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. 🙂





  • 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.


Anmelden zum Antworten