1.2 KiB
Laborationsrapport 4
Syfte
Förstå hur man använder kommandot let för att utföra grundläggande räkning. Även att behärska parameter substitution (dollarsign substitution).
Tillvägagångssätt
Matematik i skalet
let Summa="10+2"
echo $Summa
12
Ovanståede kod är enkel och fungerar bra, det som blir problem är precis som texten säger, när man delar något som inte går jämnt ut. Man får då resten som modulus enligt nedan
let Summa="10/3"
echo $Summa # Svaret blir 3, eftersom 3*3=9
Vi får fram resten genom modulus
let Summa="10%3"
echo $Summa # Svaret blir 1, efter 3*3=9+1=10, alltså resten är 1.
Istället för let
kan man instället skriva Summa=$((4+4)); echo $Summa
och vi får svaret 8.
Övningar
Reflektion
En lösning på problemet med att Bash bara räknar med int är att istället använda bc
(Bench Calculator) istället för let
i Bash.
Observera dock här att bc
inte heller räknar mer än int (heltal) som standard. T.ex. så blir echo "10/3" | bc
också 3. Tricket här att är att ställa in scale variablen till bc
. T.ex. så blir echo "scale=3;10/3" | bc
helt korrekt 3.33.