差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
最新のリビジョン両方とも次のリビジョン
programming_algorithm:dice [2020/07/29] – [6要素の配列] ikatakosprogramming_algorithm:dice [2020/07/29] – [サイコロ] ikatakos
行 1: 行 1:
-====== サイコロ ======+====== サイコロの移動 ======
  
 プログラミングの実装練習問題として、6面サイコロを平らな床に置き、パタパタと回転させながら移動させた時の向き(上を向いている面の数字など)を求める、というものがある。 プログラミングの実装練習問題として、6面サイコロを平らな床に置き、パタパタと回転させながら移動させた時の向き(上を向いている面の数字など)を求める、というものがある。
行 90: 行 90:
   new_state[2] ← state[0]   new_state[2] ← state[0]
  
-==== bitによる3面管理 ====+==== ハッシュによる3面管理 ====
  
-1~6は3bitで表現できるため、18bit(6面を管理する場合)や9bit(3面を管理する場合)の整数値として扱える。+1~6は3bitで表現できるため、各面の数字を3bitずつ並べれば、18bit(6面を管理する場合)や9bit(3面を管理する場合)の整数値として扱える。
  
 また、表裏の和である7はちょうど ''0b111'' のため、裏面の数字はbit反転することで取得できる。 また、表裏の和である7はちょうど ''0b111'' のため、裏面の数字はbit反転することで取得できる。
programming_algorithm/dice.txt · 最終更新: 2020/07/29 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0