情報科学概論(再履修)
再履修クラス 宿題 2005.01.21

Back


宿題においても, 解答用紙 を使用する.この書式で解答を提出すること.

設問

ジョーカーを含まない52枚のトランプ一式からカードを5枚抜く動作をシミュレー トするスクリプトを作成せよ.抜いた5枚のトランプのカードの表示方法は任意 とするが,分かりやすいものとすること.以下に考え方とヒントを紹介しておく ので,参考にしても良い.ただし,考え方は無数にあるので,以下にとらわれな くても構わない.


解答例

tmp = [rand(52)]
i = 1

num = ["Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"]

suit = ["Spade", "Club", "Heart", "Diamond"]

while i < 5
  condition = 1
  n = rand(52)
  for j in  0..i-1
    if n == tmp[j]
      condition = 0
    end
  end

  if condition == 1
    tmp[i] = n
    i += 1
  end
end

card = []

for i in 0..4
  card[i] = num[tmp[i]%13] + " of " + suit[tmp[i]/13]
end

p card


Back