2元一瓶啤酒,2个空瓶换一瓶啤酒,4个瓶盖换一瓶啤酒,10元能喝多少瓶啤酒
#!/bin/sh
read -p "Please enter moneys:" beer_money
beer_p=$(($beer_money/2))
beer_g=$beer_p
beer_g_h=0
beer_p_h=0
beer_g_s=$beer_g
beer_p_s=$beer_p
beer_p初始啤酒瓶及最终可喝啤酒数量beer_g初始啤酒盖beer_g_h啤酒盖换啤酒个数beer_p_h啤酒瓶换啤酒个数beer_g_s剩余啤酒盖beer_p_s剩余啤酒瓶
echo 初始------------- g_s:$beer_g_s p_s:$beer_p_s p:$beer_p
beer_g_h()
{
# if [ $(($1/4)) != 0 ];then
# beer_g_h=$(($1/4))
# fi
# return $beer_g_h
beer_g_h=$beer_g_bool
beer_g_s=$(($1-$beer_g_h*4+$beer_g_h))
beer_p_s=$(($beer_p_s+$beer_g_h))
beer_p=$(($beer_p+$beer_g_h))
echo 盖换--------g_h:$beer_g_h g_s:$beer_g_s p_s:$beer_p_s p:$beer_p
}
beer_p_h()
{
# if [ $(($1/2)) != 0 ];then
# beer_p_h=$(($1/2))
# fi
# return $beer_p_h
beer_p_h=$beer_p_bool
beer_p_s=$(($1-$beer_p_h*2+$beer_p_h))
beer_g_s=$(($beer_g_s+$beer_p_h))
beer_p=$(($beer_p+$beer_p_h))
echo 瓶换--------p_h:$beer_p_h g_s:$beer_g_s p_s:$beer_p_s p:$beer_p
}
#i=0
#while [ $i -lt 10 ]
while true
do
beer_g_bool=$(($beer_g_s/4))
if [ $beer_g_bool != 0 ];then
beer_g_h $beer_g_s
fi
#echo g_h:$beer_g_h g_s:$beer_g_s
beer_p_bool=$(($beer_p_s/2))
if [ $beer_p_bool != 0 ];then
beer_p_h $beer_p_s
fi
if [ $(($beer_g_s/4)) == 0 ] && [ $(($beer_p_s/2)) == 0 ];then
break
fi
#i=$(($i+1))
done
[root@localhost tmp]# chmod +x beer.sh
[root@localhost tmp]# ./beer.sh
Please enter moneys:10
初始------------- g_s:5 p_s:5 p:5
盖换--------g_h:1 g_s:2 p_s:6 p:6
瓶换--------p_h:3 g_s:5 p_s:3 p:9
盖换--------g_h:1 g_s:2 p_s:4 p:10
瓶换--------p_h:2 g_s:4 p_s:2 p:12
盖换--------g_h:1 g_s:1 p_s:3 p:13
瓶换--------p_h:1 g_s:2 p_s:2 p:14
瓶换--------p_h:1 g_s:3 p_s:1 p:15