Hallo,
könnt ihr mir helfen?
Folgendes problem:
Bei dieser Zeichenfolge (6_2)_8_9_1 soll 13 rauskommen. Welche Operatoren kommen rein?
Hab versucht es mit der Bash zu schreiben. Funktioniert auch fast alles...
Wenn ich allerdings versuche zu multiplizieren und "*" in der $LST eingeb bring er mir meine erste Datei im Home-Verzeichnis. Wie kann ich das umgehen? Der Code steht unten.
Vielleicht könnt ihr auch ein paar Verbesserungsvorschläge machen. zB. bei der For-Abfrage. Die gefällt mir irgendwie nicht.
könnt ihr mir helfen?
Folgendes problem:
Bei dieser Zeichenfolge (6_2)_8_9_1 soll 13 rauskommen. Welche Operatoren kommen rein?
Hab versucht es mit der Bash zu schreiben. Funktioniert auch fast alles...
Wenn ich allerdings versuche zu multiplizieren und "*" in der $LST eingeb bring er mir meine erste Datei im Home-Verzeichnis. Wie kann ich das umgehen? Der Code steht unten.
Vielleicht könnt ihr auch ein paar Verbesserungsvorschläge machen. zB. bei der For-Abfrage. Die gefällt mir irgendwie nicht.
Code:
#!/bin/bash
LST="+ - /"
for Opera1 in $LST
do
for Opera2 in $LST
do
for Opera3 in $LST
do
for Opera4 in $LST
do
Ergebins=$[(6 $Opera1 2) $Opera2 8 $Opera3 9 $Opera4 1]
test $Ergebins -eq 13
if [ $? -eq 0 ];
then echo geht; echo "(6 $Opera1 2) $Opera2 8 $Opera3 9 $Opera4 1 = $Ergebins"; echo
fi
done
done
done
done