【理解難易度SSS級!?】二次元配列を使ったシャッフルプログラム(C言語)

大魔王ダークロード  2024-06-24 04:03:57  通報
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int GetRandom(int min, int max);

int main(void){

int x,y,x2,y2,temp;

srand((unsigned int)time(NULL));

int array[3][3] =
{
{1,2,3},
{4,5,6},
{7,8,9},
};

for(int y = 0; y<3; y++){
for(int x = 0; x<3; x++){

x2 = rand() % + 2;
y2 = rand() % + 2;

temp = array[y][x];
array[y][x] = array[y2][x2];
array[y2][x2] = temp;

}
}

for(int j = 0; j<3; j++){
for(int i = 0; i<3; i++){
printf("%d ",array[i][j]);
}
printf("\n");
}



}


二次元配列を使った
シャッフル処理のソースコードだ。
早速visual studioかpaizaのブラウザc言語実行サイトで
実行してみるといいよッ!!!
パズドラとか3マッチパズルとか
ああいう「行列」を使った入れ替える系のパズルゲームだと
絶対「二次元配列」のスワップ処理のプログラムが必要だから
ここのスレッドで二次元配列をシャッフルする方法を学んどくといいよ。


いやぁー
C言語ってすげえ難しいけど
うまく実行できた時のあの達成感と爽快感がマジパねぇ…!!!
    • 1 大魔王ダークロード   [2024-06-24 04:05:12]  通報

    ゲーム作りに活かせるかは別として
    とりあえずシャッフルプログラム作ったんで
    マーイーカ!

    • 2 大魔王ダークロード   [2024-06-24 04:14:57]  通報

    コレが作れたら
    シャッフルした3つのカップから
    コインを当てるゲームなんかも作れるわけだ。
    (当たり判定などの処理を作るまでが茨の道だが)

    • 3 匿名さん   [2024-06-24 16:01:29]  通報

    きつね理解できなくて脳みそ爆散してて笑った

レスを書く

ニックネーム
又は匿名を選択:
レス本文
トリップ ※任意 半角英数8-16文字

※トリップに特定の文字列を入力することで、自分だけのIDが表示されます

※メールアドレスや電話番号などの個人情報や、メル友の募集、出会い目的の投稿はご遠慮ください
おやくそく

スレッドを作る

スレッド名
ニックネーム

スレッド本文

トリップ ※任意 半角英数8-16文字

※トリップに特定の文字列を入力することで、自分だけのIDが表示されます

※メールアドレスや電話番号などの個人情報や、メル友の募集、出会い目的の投稿はご遠慮ください
おやくそく

管理人室

お知らせ
ご意見・ご要望はこちらへ
Copyright コミュティア All Rights Reserved.