1 00:00:00,000 --> 00:00:09,410 2 00:00:09,410 --> 00:00:11,002 >> ZAMYLAちゃんのは15を楽しんでみましょう。 3 00:00:11,002 --> 00:00:13,960 15は最初のゲームであること あなたが実装することを得る。 4 00:00:13,960 --> 00:00:15,350 そして、それは対話だ。 5 00:00:15,350 --> 00:00:16,079 今、心配しないように。 6 00:00:16,079 --> 00:00:18,490 あなたが記述する必要はありません 全部自分で。 7 00:00:18,490 --> 00:00:19,650 >> 分配コードを見る。 8 00:00:19,650 --> 00:00:23,560 ので、そのゲームの構造の多く 既にあなたのために設定されています。 9 00:00:23,560 --> 00:00:27,820 これは、コマンドラインを受け取り、解析し 利用者からの引数、および作成されます 10 00:00:27,820 --> 00:00:30,900 ボードには、その入力に基づいて。 11 00:00:30,900 --> 00:00:35,240 >> これは、ゲームに当選したかどうかをチェックして終了 ユーザーのゲームに勝ったら。 12 00:00:35,240 --> 00:00:38,010 そして試合に勝つために、それを取得 ユーザからの入力と 13 00:00:38,010 --> 00:00:40,260 移動機能を呼び出します。 14 00:00:40,260 --> 00:00:44,270 だから我々は4を実装することになるだろう 15のゲーム機能 - 15 00:00:44,270 --> 00:00:47,780 INIT、ドロー、移動、および獲得した。 16 00:00:47,780 --> 00:00:50,000 >> 最初に、初期化に取り組むみましょう。 17 00:00:50,000 --> 00:00:54,820 INITでは、初期化のために、我々は表現する 2D整数配列内のボード。 18 00:00:54,820 --> 00:01:00,840 そして、これはと呼ばれるグローバル変数です 寸法マックスとマックスとボード、 19 00:01:00,840 --> 00:01:03,550 ボードの最大寸法。 20 00:01:03,550 --> 00:01:06,970 今、ボードの実寸 ユーザによって与えられたで表される 21 00:01:06,970 --> 00:01:10,300 整数d、可能性 maxより小さいこと。 22 00:01:10,300 --> 00:01:13,030 しかし、C言語では、配列のサイズを変更することはできません。 23 00:01:13,030 --> 00:01:16,400 だから、そので立ち往生している 最大寸法。 24 00:01:16,400 --> 00:01:19,510 >> INITでのあなたの仕事は、移入している ボードの値 25 00:01:19,510 --> 00:01:21,540 正しい値で。 26 00:01:21,540 --> 00:01:23,600 今、私たちは、1D配列を見てきました。 27 00:01:23,600 --> 00:01:26,570 しかし、どのように2次元配列は、働いていますか? 28 00:01:26,570 --> 00:01:29,820 行のインデックスがあります、 0インデックス、いつものように、と 29 00:01:29,820 --> 00:01:31,770 その後、列の。 30 00:01:31,770 --> 00:01:35,790 >> そして、あなたは内でグリッドを埋めるだろう ちょうどこのような値は、降順。 31 00:01:35,790 --> 00:01:41,330 グリッド0、0、行0、列0は、8である。 32 00:01:41,330 --> 00:01:42,930 グリッド0,1は7です。 33 00:01:42,930 --> 00:01:48,160 これは、例えば、ある dは、少しdは3である。 34 00:01:48,160 --> 00:01:52,630 今、15ボードも含まれている必要があります あなたがこれまでにプレイした場合は空白のタイル、 35 00:01:52,630 --> 00:01:53,940 物理的なゲームで。 36 00:01:53,940 --> 00:01:56,350 >> しかし、ボードは、整数配列である。 37 00:01:56,350 --> 00:01:58,880 だから、すべての値は整数でなければならない。 38 00:01:58,880 --> 00:02:06,580 だから、整数を決めるのはあなた次第です 空白のタイルを表現するための値。 39 00:02:06,580 --> 00:02:10,250 >> あなたのボードを初期化するには、使用することができます 含有するループ構造 40 00:02:10,250 --> 00:02:16,100 基板対基板の状態を開始 I、Jは、ある要素を表す 41 00:02:16,100 --> 00:02:19,050 行i及び列j。 42 00:02:19,050 --> 00:02:20,710 彼らは降順で開始します。 43 00:02:20,710 --> 00:02:24,200 と覚えているかのタイルの数 奇数である場合、あなたはするつもりだ 44 00:02:24,200 --> 00:02:29,260 場所を交換しなければならない 2の1の。 45 00:02:29,260 --> 00:02:31,420 だから、我々は我々の初期化され、ボードを持っている。 46 00:02:31,420 --> 00:02:32,683