1
该程序的主要目标是模拟卡片的绘制次数,随着用户选择,然后使用'*'打印直方图来表示每张卡片上的点击次数。但是,我遇到的问题是检索每个阵列中的元素并打印与它们相关的星星。这是我到目前为止有:Bash:遍历数组以获得每个索引的值
timelimit=5
echo -e "How many trials would you like to run? \c"
read -t $timelimit trials
if [ ! -z "$trials" ]
then
echo -e "\nWe will now run $trials trials"
else
trials=10
echo -e "\nWe will now run the default amount of trials: $trials"
fi
count=1
MAXCARD=53
declare -a CARDARRAY
while [ "$count" -le $trials ]
do
card=$RANDOM
let "card %= MAXCARD"
let "CARDARRAY[$card] += 1"
let "count += 1"
done
echo ${CARDARRAY[@]}
for ((i=0; i<${#CARDARRAY[@]}; i++));
do
#declare "temp"="${CARDARRAY[$i]}"
#echo "$temp"
#for ((j=0; j<temp; j++));
#do
#echo "*"
#done
echo "$i"
done
显然最后的for循环是在那里我遇到问题,目前是按照每个卡多少命中有印刷的明星的最新尝试。
有道理,来自C和Java这样的语言,bash的格式非常新!感谢您的帮助! – Hotshot