忍者ブログ

プログラム関連~チラシの裏~

スパム対策したりプログラム組んだり色々やってる為替とは別の面を表に出してみた。

<< | 2017/09 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | >>

マイクロアド リンク

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

乱数クラスを利用したトランプのベースクラス(サンプル)

サンプルコードとして単純で便利かなって思ってつくりました。
C++だけどJAVAに直せば携帯電話でも使えると思います。
Linux携帯とかじゃなくて、Iアプリみたいなやつ。
その前に乱数もJAVAに直さないと使えない。
携帯電話で使うJAVAだと名称を短くするツールで圧縮しないと駄目なんだからね!

●概要
メルセンヌ・ツイスタの乱数クラスを継承したトランプのベースクラス。
乱数を使ったシャッフルのテストプログラム。

●学べること
・派生と継承。
・継承時のコンストラクタと代入演算子の使い方。 
・カードゲームを作る簡単な基礎。
・privateで派生する意味って?

世間的な言葉を使う階層はこんな感じ。
■スーパークラス(一番上のクラス)private : cMTRand
└トランプ基本クラス cPlayingCards

派生クラスの説明として、コンストラクタとデストラクタがくる順番。
●開始
1.乱数コンストラクタ スーパー
2.トランプコンストラクタ 継承

●終了
1.トランプデストラクタ 継承
2.乱数デストラクタ スーパー

●コピーコンストラクタの場合
コンストラクタの初期化リストにいれてるので
1.乱数のコピーコンストラクタ
2.トランプのコピーコンストラクタ

の順番でくるよ。まぁ知ってるか。

●メンバの説明(クラスの使い方)
・コンストラクタ
引数なし。値のみ初期化。
引数有り。
引数:
乱数の種
カードの種類指定、ハート、ダイヤ、スペード、クラブの4種類なら4つ。
1種類の最大枚数、通常なら1~10、JQKの13種なので13。
ジョーカーの枚数 ジョーカーを使うなら枚数指定。

・CreateCard カード配列の作成。
publicなので何度でも出来ます。
人によってはprivateにしてアクセスさせないつくりにします。
カードの種類指定、ハート、ダイヤ、スペード、クラブの4種類なら4つ。
1種類の最大枚数、通常なら1~10、JQKの13種なので13。
ジョーカーの枚数 ジョーカーを使うなら枚数指定。

・Shuffle シャッフル
引数
乱数を初期化して使うなら乱数の種値を設定。
0の場合は、現在のまま使う。
戻り値int
成功 1 失敗0

●値取得
・ unsigned int GetCard();
カードを1枚引く。カード参照位置が加算される。

・unsigned int GetCard(unsigned int uiPos);
位置指定でカードを取得する。配列範囲内で指定する。
使用済みカードでも取得できる。

・unsigned int GetKind(unsigned int uiCard); 
カードの種類を取得する。0~3までをハート~クラブまでに指定した場合。

・unsigned int GetCardNum(unsigned int uiCard);
カードの番号取得1~13までの値。

・unsigned int GetCardMax();
デッキ内のカード枚数。通常とランプなら13*4

・unsigned int GetKindMax()
カードの種類取得
ハートからクラブまであるので4。

unsigned int GetCardPos()
使用したカードの枚数。
現在カード配列のどこを見ているか?
ジョーカーなしなら0~52の間。

トランプソースコード:ダウンロード(zip)
※メルセンヌ・ツイスタのクラスもダウンロードして同じ階層に入れてビルドしてください。
メルセンヌ・ツイスタ擬似乱数サンプル
PR
この記事にコメントする







  Vodafone絵文字入力用パレット表示ボタン i-mode絵文字入力用パレット表示ボタン Ezweb絵文字入力用パレット表示ボタン

この記事へのトラックバック




ブログ内検索
最新コメント
[06/24 Kazelcmo]
[06/24 Kazelxyk]
[04/23 Presencia]
最新トラックバック
ブログ関連リンク

カレンダー
08 2017/09 10
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
カウンター
FX NEWS

-外国為替-

AdminControlMenu: AdminMenu | NewEntry | EditComment | EditTrackback

忍者ブログ [PR]