<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>ピースを動かす</title><revhistory><revision><revnumber>44</revnumber><date>2012-01-12 07:09:21</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>43</revnumber><date>2012-01-12 07:07:18</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>42</revnumber><date>2012-01-12 07:02:55</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>41</revnumber><date>2012-01-12 07:00:55</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>40</revnumber><date>2012-01-12 06:59:35</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>39</revnumber><date>2012-01-12 06:57:06</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>38</revnumber><date>2012-01-12 06:54:57</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>37</revnumber><date>2012-01-12 06:42:59</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>36</revnumber><date>2012-01-12 06:35:42</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>35</revnumber><date>2012-01-12 06:27:44</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>34</revnumber><date>2011-01-19 00:42:44</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>33</revnumber><date>2011-01-15 01:41:58</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>32</revnumber><date>2011-01-12 00:34:49</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>31</revnumber><date>2010-01-13 00:34:43</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>30</revnumber><date>2010-01-12 02:32:38</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>29</revnumber><date>2010-01-06 05:09:20</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>28</revnumber><date>2010-01-06 01:09:25</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>27</revnumber><date>2010-01-06 01:06:38</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>26</revnumber><date>2010-01-06 01:04:51</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>25</revnumber><date>2010-01-06 01:01:17</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>24</revnumber><date>2010-01-06 00:55:32</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>23</revnumber><date>2010-01-06 00:41:42</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>22</revnumber><date>2010-01-06 00:38:51</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>21</revnumber><date>2010-01-06 00:35:37</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>20</revnumber><date>2010-01-06 00:34:07</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>19</revnumber><date>2010-01-06 00:31:36</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>18</revnumber><date>2010-01-06 00:26:33</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>17</revnumber><date>2010-01-05 13:17:02</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>16</revnumber><date>2010-01-05 13:07:38</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>15</revnumber><date>2010-01-05 12:50:50</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>14</revnumber><date>2010-01-05 12:47:18</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>13</revnumber><date>2010-01-05 12:43:57</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>12</revnumber><date>2010-01-05 12:33:42</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>11</revnumber><date>2010-01-05 12:29:13</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>10</revnumber><date>2010-01-05 07:30:54</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>9</revnumber><date>2010-01-05 07:27:55</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>8</revnumber><date>2010-01-05 07:26:39</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>7</revnumber><date>2010-01-05 07:08:29</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>6</revnumber><date>2009-12-17 07:54:59</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>5</revnumber><date>2009-12-17 07:54:00</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>4</revnumber><date>2009-12-15 12:40:54</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>3</revnumber><date>2009-12-07 01:09:19</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>2</revnumber><date>2009-12-04 06:15:29</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>1</revnumber><date>2009-12-04 06:14:59</date><authorinitials>masahiko</authorinitials></revision></revhistory></articleinfo><section><title>ピースを動かす</title><para>ピースを１つ取り除いてできた空白の箇所を使って 移動するための処理を記述します。 </para><!--rule (<hr>) is not applicable to DocBook--><section><title>空白の箇所の表現</title><para>どこに空白があるかを表すために、インスタンス変数を使います。 </para><itemizedlist><listitem><para>spxで空白の横方向の位置を、０～３の値で表すものとします。 </para></listitem><listitem><para>spyで空白の縦方向の位置を、０～３の値で表すものとします。 </para></listitem></itemizedlist><para>例えば、spx=0, spy=2 のときは 上から３番目の左端が空白。 </para></section><section><title>初期化</title><para>最初は右下隅のピースを取り除いた位置です。 したがって値は </para><itemizedlist><listitem override="none"><para>spx = 3 </para></listitem><listitem override="none"><para>spy = 3 </para></listitem></itemizedlist><para>空白箇所は右下のピースを取り除いたものですから、 配列要素の値は右下のピースの値としておきます。 </para><itemizedlist><listitem override="none"><para>ban[spx][spy] = 15 </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--></section><section><title>空白箇所の表示</title><para>paintComponent内に記述。 </para><para>spx,spyで表された場所は空白であることを示すため、 １色で塗りつぶします。 </para><para>クリック時の処理の演習ではcx,cyで示された位置を塗りつぶしていましたが、 spx,spyが示す箇所を塗りつぶすように修正します。 </para><para>塗りつぶしの色は好みのものを指定してください。 </para><!--rule (<hr>) is not applicable to DocBook--></section><section><title>ボタンが押されたときの処理</title><para>mousePressed内に記述。 </para><para>クリック時の処理の演習では クリックされた座標x,yから対応する位置cx,cyを求めました。 </para><itemizedlist><listitem override="none"><para>cx,cyはmousePressedメソッド内でしか使わないので、(インスタンス変数ではなく)メソッド内の変数として宣言します。 </para></listitem></itemizedlist><para>このcx,cyとspx,spyの値を比較し、 クリックされた位置のピースが移動可能かどうか判定し、 可能な場合は移動する処理を記述します。 </para><section><title>移動可能かどうかの判定</title><para>空白箇所の上下左右のとなりにあるピースの上でクリックされたときは、 そのピースをスライドして移動できる。 </para><para>例えば丸で示した位置が空白のとき </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%83%94%E3%83%BC%E3%82%B9%E3%82%92%E5%8B%95%E3%81%8B%E3%81%99?action=AttachFile&amp;do=get&amp;target=idou1.png"/></imageobject><textobject><phrase>idou1.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>クリックされた位置がA,B,C,Dのどれかであればよい。 </para><para>空白の位置はspx,spyで、クリックされた位置はcx,cyで表されているので、 これを用いて判定を行う。 </para><para>例えば、丸の位置が空白部分でAの位置でボタンが押された場合、変数の値は次のようになっています。 </para><itemizedlist><listitem override="none"><para>spx は 1 </para></listitem><listitem override="none"><para>spy は 2 </para></listitem><listitem override="none"><para>cx は 2 </para></listitem><listitem override="none"><para>cy は 2 </para></listitem></itemizedlist></section><section><title>ピースを移動する処理</title><para>丸の位置が空白部分で、そのすぐ右のAの位置でボタンが押された場合を考えます。 </para><para>次の処理を順に行ないます。 </para><itemizedlist><listitem override="none"><para>１）Aの位置にあるピースをすぐ左の空白位置に移動します。 </para></listitem><listitem override="none"><para>２）空白位置をAの位置に変更します。 </para></listitem><listitem override="none"><para>３）新しい空白位置に対応する値を代入します。 </para></listitem></itemizedlist><para>１）Aの位置どのピースがあるかはban[cx][cy]の値として記憶しており、 この値を空白位置である(spx,spy)に移すには </para><itemizedlist><listitem override="none"><para>ban[spx][spy] = ban[cx][cy] </para></listitem></itemizedlist><para>を行えばよい。 </para><para>２）spx,spyの値を新しい空白位置の値であるcx,cyに修正します。 </para><itemizedlist><listitem override="none"><para>spx = cx </para></listitem><listitem override="none"><para>spy = cy </para></listitem></itemizedlist><para>３）空白位置に対応する値(15)を代入します。 </para><itemizedlist><listitem override="none"><para>ban[spx][spy] = 15 </para></listitem></itemizedlist><para>以上をまとめると次のようになります。 </para><itemizedlist><listitem override="none"><para>ban[spx][spy] = ban[cx][cy]; </para></listitem><listitem override="none"><para>spx = cx; </para></listitem><listitem override="none"><para>spy = cy; </para></listitem><listitem override="none"><para>ban[spx][spy] = 15; </para></listitem></itemizedlist><para>空白の右隣のAの位置で考えましたが、 B,C,Dの位置でもこの命令でよいことを理解しておくこと。 </para><!--rule (<hr>) is not applicable to DocBook--></section></section><section><title>プログラム</title><itemizedlist><listitem override="none"><programlisting format="linespecific" language="java" linenumbering="numbered" startinglinenumber="1"><token><![CDATA[import]]></token><![CDATA[ ]]><methodname><![CDATA[javax.swing.*]]></methodname><![CDATA[;]]>
<token><![CDATA[import]]></token><![CDATA[ ]]><methodname><![CDATA[java.awt.*]]></methodname><![CDATA[;]]>
<token><![CDATA[import]]></token><![CDATA[ ]]><methodname><![CDATA[java.awt.event.*]]></methodname><![CDATA[;]]>

<token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[class]]></token><![CDATA[ ]]><methodname><![CDATA[Game6]]></methodname><![CDATA[ ]]><token><![CDATA[extends]]></token><![CDATA[ ]]><methodname><![CDATA[JPanel]]></methodname><![CDATA[ ]]><token><![CDATA[implements]]></token><![CDATA[ ]]><methodname><![CDATA[MouseListener]]></methodname>
<![CDATA[{]]>
<![CDATA[        ]]><methodname><![CDATA[Image]]></methodname><![CDATA[ ]]><methodname><![CDATA[img]]></methodname><![CDATA[;]]>
<![CDATA[        ]]><token><![CDATA[int]]></token><![CDATA[[][] ]]><methodname><![CDATA[ban]]></methodname><![CDATA[;]]>
<![CDATA[        ]]><token><![CDATA[int]]></token><![CDATA[ ]]><methodname><![CDATA[spx]]></methodname><![CDATA[, ]]><methodname><![CDATA[spy]]></methodname><![CDATA[;]]>
<![CDATA[        ]]>
<![CDATA[        ]]><methodname><![CDATA[Game6]]></methodname><![CDATA[()]]>
<![CDATA[        {]]>
<![CDATA[                ]]><methodname><![CDATA[ImageIcon]]></methodname><![CDATA[ ]]><methodname><![CDATA[ii]]></methodname><![CDATA[ = ]]><token><![CDATA[new]]></token><![CDATA[ ]]><methodname><![CDATA[ImageIcon]]></methodname><![CDATA[(]]><phrase><![CDATA["game0.png"]]></phrase><![CDATA[);]]>
<![CDATA[                ]]><methodname><![CDATA[img]]></methodname><![CDATA[ = ]]><methodname><![CDATA[ii]]></methodname><![CDATA[.]]><methodname><![CDATA[getImage]]></methodname><![CDATA[();]]>
<![CDATA[                ]]><methodname><![CDATA[addMouseListener]]></methodname><![CDATA[(]]><token><![CDATA[this]]></token><![CDATA[);]]>
<![CDATA[                ]]><methodname><![CDATA[ban]]></methodname><![CDATA[ = ]]><token><![CDATA[new]]></token><![CDATA[ ]]><token><![CDATA[int]]></token><![CDATA[[4][4];]]>
<![CDATA[                ]]><methodname><![CDATA[shokika]]></methodname><![CDATA[();]]>
<![CDATA[                ]]><methodname><![CDATA[spx]]></methodname><![CDATA[ = 3;]]>
<![CDATA[                ]]><methodname><![CDATA[spy]]></methodname><![CDATA[ = 3;]]>
<![CDATA[        }]]>

<![CDATA[        ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[shokika]]></methodname><![CDATA[()]]>
<![CDATA[        {]]>
<![CDATA[                ]]><methodname><![CDATA[盤の表現の演習]]></methodname>
<![CDATA[        }]]>
<![CDATA[        ]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[paintComponent]]></methodname><![CDATA[(]]><methodname><![CDATA[Graphics]]></methodname><![CDATA[ ]]><methodname><![CDATA[g]]></methodname><![CDATA[)]]>
<![CDATA[        {]]>
<![CDATA[                ]]><token><![CDATA[int]]></token><![CDATA[ ]]><methodname><![CDATA[w]]></methodname><![CDATA[, ]]><methodname><![CDATA[h]]></methodname><![CDATA[, ]]><methodname><![CDATA[ax]]></methodname><![CDATA[, ]]><methodname><![CDATA[ay]]></methodname><![CDATA[, ]]><methodname><![CDATA[sx]]></methodname><![CDATA[, ]]><methodname><![CDATA[sy]]></methodname><![CDATA[, ]]><methodname><![CDATA[x]]></methodname><![CDATA[, ]]><methodname><![CDATA[y]]></methodname><![CDATA[;]]>
<![CDATA[                ]]><methodname><![CDATA[w]]></methodname><![CDATA[ = 100;]]>
<![CDATA[                ]]><methodname><![CDATA[h]]></methodname><![CDATA[ = 100;]]>
<![CDATA[                ]]><token><![CDATA[for]]></token><![CDATA[ (]]><methodname><![CDATA[x]]></methodname><![CDATA[ = 0; ]]><methodname><![CDATA[x]]></methodname><![CDATA[ < 4; ]]><methodname><![CDATA[x]]></methodname><![CDATA[++)]]>
<![CDATA[                        ]]><token><![CDATA[for]]></token><![CDATA[ (]]><methodname><![CDATA[y]]></methodname><![CDATA[ = 0; ]]><methodname><![CDATA[y]]></methodname><![CDATA[ < 4; ]]><methodname><![CDATA[y]]></methodname><![CDATA[++)]]>
<![CDATA[                        {]]>
<![CDATA[                                ]]><methodname><![CDATA[ax]]></methodname><![CDATA[ = ]]><methodname><![CDATA[盤の表示の演習]]></methodname><![CDATA[ ;]]>
<![CDATA[                                ]]><methodname><![CDATA[ay]]></methodname><![CDATA[ = ]]><methodname><![CDATA[盤の表示の演習]]></methodname><![CDATA[ ;]]>
<![CDATA[                                ]]><methodname><![CDATA[sx]]></methodname><![CDATA[ = ]]><methodname><![CDATA[盤の表示の演習]]></methodname><![CDATA[ ;]]>
<![CDATA[                                ]]><methodname><![CDATA[sy]]></methodname><![CDATA[ = ]]><methodname><![CDATA[盤の表示の演習]]></methodname><![CDATA[ ;]]>
<![CDATA[                                ]]><methodname><![CDATA[g]]></methodname><![CDATA[.]]><methodname><![CDATA[drawImage]]></methodname><![CDATA[(]]><methodname><![CDATA[img]]></methodname><![CDATA[, ]]><methodname><![CDATA[画像を表示するの演習]]></methodname><![CDATA[, ]]><token><![CDATA[this]]></token><![CDATA[);]]>
<![CDATA[                        }]]>
<![CDATA[                ]]><methodname><![CDATA[g]]></methodname><![CDATA[.]]><methodname><![CDATA[setColor]]></methodname><![CDATA[(]]><methodname><![CDATA[Color]]></methodname><![CDATA[.]]><methodname><![CDATA[blue]]></methodname><![CDATA[);]]>
<![CDATA[                ]]><methodname><![CDATA[g]]></methodname><![CDATA[.]]><methodname><![CDATA[fillRect]]></methodname><![CDATA[(]]><methodname><![CDATA[spx]]></methodname><![CDATA[*100, ]]><methodname><![CDATA[spy]]></methodname><![CDATA[*100, 100, 100);]]>
<![CDATA[        }]]>
<![CDATA[        ]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[mousePressed]]></methodname><![CDATA[(]]><methodname><![CDATA[MouseEvent]]></methodname><![CDATA[ ]]><methodname><![CDATA[e]]></methodname><![CDATA[)]]>
<![CDATA[        {]]>
<![CDATA[                ]]><token><![CDATA[int]]></token><![CDATA[ ]]><methodname><![CDATA[x]]></methodname><![CDATA[, ]]><methodname><![CDATA[y]]></methodname><![CDATA[, ]]><methodname><![CDATA[cx]]></methodname><![CDATA[, ]]><methodname><![CDATA[cy]]></methodname><![CDATA[;]]>
<![CDATA[                ]]><methodname><![CDATA[x]]></methodname><![CDATA[ = ]]><methodname><![CDATA[e]]></methodname><![CDATA[.]]><methodname><![CDATA[getX]]></methodname><![CDATA[();]]>
<![CDATA[                ]]><methodname><![CDATA[y]]></methodname><![CDATA[ = ]]><methodname><![CDATA[e]]></methodname><![CDATA[.]]><methodname><![CDATA[getY]]></methodname><![CDATA[();]]>
<![CDATA[                ]]><methodname><![CDATA[cx]]></methodname><![CDATA[ = ]]><methodname><![CDATA[クリック時の処理の演習]]></methodname><![CDATA[;]]>
<![CDATA[                ]]><methodname><![CDATA[cy]]></methodname><![CDATA[ = ]]><methodname><![CDATA[クリック時の処理の演習]]></methodname><![CDATA[;]]>
<![CDATA[                ]]><token><![CDATA[if]]></token><![CDATA[ ( ]]><methodname><![CDATA[今回の演習]]></methodname><![CDATA[ )]]>
<![CDATA[                {]]>
<![CDATA[                        ]]><methodname><![CDATA[ban]]></methodname><![CDATA[[]]><methodname><![CDATA[spx]]></methodname><![CDATA[][]]><methodname><![CDATA[spy]]></methodname><![CDATA[] = ]]><methodname><![CDATA[ban]]></methodname><![CDATA[[]]><methodname><![CDATA[cx]]></methodname><![CDATA[][]]><methodname><![CDATA[cy]]></methodname><![CDATA[];]]>
<![CDATA[                        ]]><methodname><![CDATA[spx]]></methodname><![CDATA[ = ]]><methodname><![CDATA[cx]]></methodname><![CDATA[;]]>
<![CDATA[                        ]]><methodname><![CDATA[spy]]></methodname><![CDATA[ = ]]><methodname><![CDATA[cy]]></methodname><![CDATA[;]]>
<![CDATA[                        ]]><methodname><![CDATA[ban]]></methodname><![CDATA[[]]><methodname><![CDATA[spx]]></methodname><![CDATA[][]]><methodname><![CDATA[spy]]></methodname><![CDATA[] = 15;]]>
<![CDATA[                        ]]><methodname><![CDATA[repaint]]></methodname><![CDATA[();]]>
<![CDATA[                }]]>
<![CDATA[        }]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[mouseEntered]]></methodname><![CDATA[(]]><methodname><![CDATA[MouseEvent]]></methodname><![CDATA[ ]]><methodname><![CDATA[e]]></methodname><![CDATA[) { }]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[mouseExited]]></methodname><![CDATA[(]]><methodname><![CDATA[MouseEvent]]></methodname><![CDATA[ ]]><methodname><![CDATA[e]]></methodname><![CDATA[) { }]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[mouseReleased]]></methodname><![CDATA[(]]><methodname><![CDATA[MouseEvent]]></methodname><![CDATA[ ]]><methodname><![CDATA[e]]></methodname><![CDATA[) { }]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[mouseClicked]]></methodname><![CDATA[(]]><methodname><![CDATA[MouseEvent]]></methodname><![CDATA[ ]]><methodname><![CDATA[e]]></methodname><![CDATA[) { }]]>
<![CDATA[        ]]>
<![CDATA[        ]]><token><![CDATA[public]]></token><![CDATA[ ]]><token><![CDATA[static]]></token><![CDATA[ ]]><token><![CDATA[void]]></token><![CDATA[ ]]><methodname><![CDATA[main]]></methodname><![CDATA[(]]><methodname><![CDATA[String]]></methodname><![CDATA[[] ]]><methodname><![CDATA[args]]></methodname><![CDATA[)]]>
<![CDATA[        {]]>
<![CDATA[                ]]><methodname><![CDATA[JFrame]]></methodname><![CDATA[ ]]><methodname><![CDATA[f]]></methodname><![CDATA[;]]>
<![CDATA[                ]]>
<![CDATA[                ]]><methodname><![CDATA[f]]></methodname><![CDATA[ = ]]><token><![CDATA[new]]></token><![CDATA[ ]]><methodname><![CDATA[JFrame]]></methodname><![CDATA[();]]>
<![CDATA[                ]]><methodname><![CDATA[f]]></methodname><![CDATA[.]]><methodname><![CDATA[setVisible]]></methodname><![CDATA[(]]><symbol><![CDATA[true]]></symbol><![CDATA[);]]>
<![CDATA[                ]]><methodname><![CDATA[f]]></methodname><![CDATA[.]]><methodname><![CDATA[setTitle]]></methodname><![CDATA[(]]><phrase><![CDATA["15Game"]]></phrase><![CDATA[);]]>
<![CDATA[                ]]><methodname><![CDATA[f]]></methodname><![CDATA[.]]><methodname><![CDATA[setSize]]></methodname><![CDATA[(420, 450);]]>
<![CDATA[                ]]><methodname><![CDATA[f]]></methodname><![CDATA[.]]><methodname><![CDATA[setDefaultCloseOperation]]></methodname><![CDATA[(]]><methodname><![CDATA[JFrame]]></methodname><![CDATA[.]]><methodname><![CDATA[EXIT_ON_CLOSE]]></methodname><![CDATA[);]]>
<![CDATA[                ]]><methodname><![CDATA[f]]></methodname><![CDATA[.]]><methodname><![CDATA[add]]></methodname><![CDATA[( ]]><token><![CDATA[new]]></token><![CDATA[ ]]><methodname><![CDATA[Game6]]></methodname><![CDATA[() );]]>
<![CDATA[        }]]>
<![CDATA[}]]>
</programlisting></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--></section><section><title>演習</title><para>ボタンが押された位置が空白箇所の隣であるかを判定する条件を <emphasis role="strong">今回の演習</emphasis> の位置に記述しプログラムを完成させなさい。 </para></section></section></article>