Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > b611ea73723a8287cce23d3124a6eeea > files > 287

howto-sgml-ko-2006-5mdv2010.0.noarch.rpm

#!/bin/bash
# RANDOM ÀÌ ¾ó¸¶³ª ·£´ýÇÑ°¡?

RANDOM=$$       # ½ºÅ©¸³Æ®ÀÇ ÇÁ·Î¼¼½º ID ¸¦ ½á¼­ ·£´ý ³Ñ¹ö ¹ß»ý±âÀÇ seed¸¦ ´Ù½Ã »ý¼º.

PIPS=6          # ÁÖ»çÀ§´Â ´«ÀÌ 6°³ÁÒ.
MAXTHROWS=600   # ½Ã°£ÀÌ ³²¾Æ µ¹¸é ÀÌ ¼ýÀÚ¸¦ ´õ ´Ã·Áº¸¼¼¿ä.
throw=0         # ´øÁø ¼ýÀÚ.

zeroes=0        # ÃʱâÈ­¸¦ ¾È Çϸé 0ÀÌ ¾Æ´Ï¶ó ³ÎÀÌ µÇ±â ¶§¹®¿¡
ones=0          # 0À¸·Î ÃʱâÈ­ ÇØ¾ß µË´Ï´Ù.
twos=0
threes=0
fours=0
fives=0
sixes=0

print_result ()
{
echo
echo "ones =   $ones"
echo "twos =   $twos"
echo "threes = $threes"
echo "fours =  $fours"
echo "fives =  $fives"
echo "sixes =  $sixes"
echo
}

update_count()
{
case "$1" in
  0) let "ones += 1";;   # ÁÖ»çÀ§¿¡ "0"ÀÌ ¾øÀ¸´Ï±î ÀÌ°É 1À̶ó°í ÇÏ°í
  1) let "twos += 1";;   # ÀÌ°É 2¶ó°í ÇÏ°í.... µîµî..
  2) let "threes += 1";;
  3) let "fours += 1";;
  4) let "fives += 1";;
  5) let "sixes += 1";;
esac
}

echo


while [ "$throw" -lt "$MAXTHROWS" ]
do
  let "die1 = RANDOM % $PIPS"
  update_count $die1
  let "throw += 1"
done  

print_result

# RANDOM ÀÌ Á¤¸» ·£´ýÇÏ´Ù¸é °á°ú ºÐÆ÷´Â È®½ÇÈ÷ °í¸£°Ô ³ª¿Ã °ÍÀÔ´Ï´Ù.
# $MAXTHROWS °¡ 600 ÀÏ ¶§´Â °¢°¢Àº 100 ¿¡¼­ 20 Á¤µµÀÇ Â÷À̸¦ µÎ°í ºÐ»êµÇ¾î¾ß ÇÕ´Ï´Ù.
#
# ÁÖÀÇÇÒ °ÍÀº RANDOM ÀÌ Àǻ糭¼ö(pseudorandom) ¹ß»ý±âÀ̱⠶§¹®¿¡
# ÁøÂ¥·Î ·£´ýÇÑ °ÍÀº ¾Æ´Ï¶ó´Â Á¡ÀÔ´Ï´Ù.

# ½¬¿î ¿¬½À¹®Á¦ Çϳª ³¾²²¿ä.
# ÀÌ ½ºÅ©¸³Æ®¸¦ µ¿Àü 1000 ¹ø µÚÁý´Â °É·Î ¹Ù²ãº¸¼¼¿ä.
# "¾Õ"À̳ª "µÚ" Áß¿¡ Çϳª°¡ ³ª¿À°ÚÁÒ?

exit 0