LDP/LDP/guide/docbook/abs-guide/multiplication.sh

32 lines
888 B
Bash
Raw Normal View History

2002-04-01 16:05:47 +00:00
#!/bin/bash
# multiplication.sh
2002-06-03 14:35:48 +00:00
multiply () # Multiplies params passed.
{ # Will accept a variable number of args.
2002-04-01 16:05:47 +00:00
local product=1
2002-06-03 14:35:48 +00:00
until [ -z "$1" ] # Until uses up arguments passed...
2002-04-01 16:05:47 +00:00
do
let "product *= $1"
shift
done
2002-06-03 14:35:48 +00:00
echo $product # Will not echo to stdout,
} #+ since this will be assigned to a variable.
2002-04-01 16:05:47 +00:00
2002-06-03 14:35:48 +00:00
mult1=15383; mult2=25211
val1=`multiply $mult1 $mult2`
2011-08-29 23:59:19 +00:00
# Assigns stdout (echo) of function to the variable val1.
echo "$mult1 X $mult2 = $val1" # 387820813
2002-04-01 16:05:47 +00:00
2002-06-03 14:35:48 +00:00
mult1=25; mult2=5; mult3=20
val2=`multiply $mult1 $mult2 $mult3`
2011-08-29 23:59:19 +00:00
echo "$mult1 X $mult2 X $mult3 = $val2" # 2500
2002-04-01 16:05:47 +00:00
2002-06-03 14:35:48 +00:00
mult1=188; mult2=37; mult3=25; mult4=47
val3=`multiply $mult1 $mult2 $mult3 $mult4`
2011-08-29 23:59:19 +00:00
echo "$mult1 X $mult2 X $mult3 X $mult4 = $val3" # 8173300
2002-04-01 16:05:47 +00:00
exit 0