#!/bin/csh set produkt = 1 set altesprodukt = 1 if($#argv>0) then foreach z ($argv) @ produkt *= $z end echo $produkt else echo "Multiplikation von Zahlen:" echo "? Zwischensumme anzeigen" echo "= Produkt anzeigen und beenden" echo "x vorangegangene Zahl annulieren" echo "n Prozedur neu starten" set exit=0 while("$exit" == "0") echo -------------------------------- echo -n "Auswahl oder Zahl eingeben: " set eingabe = $< switch("$eingabe") case [?]: echo "Zwischenergebnis: $produkt" breaksw case =: echo "Endprodukt: $produkt" set exit = 1 breaksw case x: set produkt = $altesprodukt echo "Neues Produkt: $produkt" breaksw case n: echo "Neustart der Multiplikation, altes Produkt = $produkt" set produkt = 1 set altesprodukt = 1 breaksw default: # Ziffern erkennen set a = "`echo '$eingabe' | grep \[0-9\] `" if ("$a" != "") then # es sind Ziffern enthalten # Nicht-Ziffern herausfiltern set eingabe = `echo "$eingabe" | sed 's/[^0-9]//g'` set altesprodukt = $produkt @ produkt *= $eingabe set divprodukt = $altesprodukt if("$eingabe" != "0") @ divprodukt = $produkt / $eingabe if("$altesprodukt" != "$divprodukt") then set produkt = $altesprodukt echo Wertebereich ueberschritten! echo Loesche letzten Faktor... endif breaksw else echo "Unerwartete Eingabe: $eingabe" endif breaksw endsw end endif