<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=TicTacToe%2F%EC%9E%84%EC%9D%B8%ED%83%9D</id>
	<title>TicTacToe/임인택 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=TicTacToe%2F%EC%9E%84%EC%9D%B8%ED%83%9D"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=TicTacToe/%EC%9E%84%EC%9D%B8%ED%83%9D&amp;action=history"/>
	<updated>2026-05-15T09:29:13Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=TicTacToe/%EC%9E%84%EC%9D%B8%ED%83%9D&amp;diff=39728&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:28, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=TicTacToe/%EC%9E%84%EC%9D%B8%ED%83%9D&amp;diff=39728&amp;oldid=prev"/>
		<updated>2021-02-07T05:28:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; &lt;br /&gt;
 package TicTacToe;&lt;br /&gt;
 &lt;br /&gt;
 import java.awt.Graphics;&lt;br /&gt;
 import java.awt.event.*;&lt;br /&gt;
 &lt;br /&gt;
 import javax.swing.JFrame;&lt;br /&gt;
 &lt;br /&gt;
 public class TicTacToe extends JFrame {&lt;br /&gt;
     private JFrame frame;&lt;br /&gt;
     private int board[][];&lt;br /&gt;
     private int x, y;&lt;br /&gt;
     private boolean b;&lt;br /&gt;
     private static final int __O = 1;&lt;br /&gt;
     private static final int __X = -1;&lt;br /&gt;
     private static final int __NONE = 0;&lt;br /&gt;
     &lt;br /&gt;
     &lt;br /&gt;
     public TicTacToe() {&lt;br /&gt;
         init();&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     private void init() {&lt;br /&gt;
         board = new int[3][3];&lt;br /&gt;
         for(int i=0; i&amp;amp;lt;3; ++i) {&lt;br /&gt;
             for(int j=0; j&amp;amp;lt;3; ++j) {&lt;br /&gt;
                 board[i][j] = __NONE;&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         addMouseListener(new MouseAdapter() {&lt;br /&gt;
             public void mouseClicked(MouseEvent e) {&lt;br /&gt;
                 x = e.getX()/200;&lt;br /&gt;
                 y = e.getY()/200;&lt;br /&gt;
                 &lt;br /&gt;
                 if( board[x][y] != __NONE )&lt;br /&gt;
                     return;&lt;br /&gt;
                 &lt;br /&gt;
                 if( b )&lt;br /&gt;
                     board[x][y] = __O;&lt;br /&gt;
                 else&lt;br /&gt;
                     board[x][y] = __X;&lt;br /&gt;
                 &lt;br /&gt;
                 b = !b;&lt;br /&gt;
                 &lt;br /&gt;
                 repaint();&lt;br /&gt;
                 &lt;br /&gt;
                 int result = someoneWin(x,y);&lt;br /&gt;
                 if( result != __NONE ) {&lt;br /&gt;
 	                if( result == -3)&lt;br /&gt;
 	                    System.out.println(&amp;quot;흑 승&amp;quot;);&lt;br /&gt;
 	                else if( result == 3)&lt;br /&gt;
 	                    System.out.println(&amp;quot;백 승&amp;quot;);&lt;br /&gt;
                     System.exit(1);&lt;br /&gt;
                 }&lt;br /&gt;
             }&lt;br /&gt;
         });&lt;br /&gt;
         &lt;br /&gt;
         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
         setSize(600,600);&lt;br /&gt;
         show();&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     public int someoneWin(int x, int y) {&lt;br /&gt;
         int checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; --i, --j) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; --i, ++j) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; ++i, --j) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; ++i, ++j) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; ++i) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; --i) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0; ++j) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         checkPoint = 0;&lt;br /&gt;
         for(int i=x,j=y; i&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; j&amp;amp;lt;3 &amp;amp;amp;&amp;amp;amp; i&amp;amp;gt;=0 &amp;amp;amp;&amp;amp;amp; j&amp;amp;gt;=0 ; --j) {&lt;br /&gt;
             checkPoint += board[i][j];&lt;br /&gt;
             if( winLose(checkPoint) ) return checkPoint;&lt;br /&gt;
         }&lt;br /&gt;
         &lt;br /&gt;
         return __NONE;&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     private boolean winLose(int cp) {&lt;br /&gt;
         return ( cp==-3) || (cp==3);&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     public void paint(Graphics g) {&lt;br /&gt;
         drawGrids(g);&lt;br /&gt;
         drawChoices(g);&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     private void drawChoices(Graphics g) {&lt;br /&gt;
         for(int i=0; i&amp;amp;lt;3; ++i) {&lt;br /&gt;
             for(int j=0; j&amp;amp;lt;3; ++j) {&lt;br /&gt;
                 drawCell(g, i,j,board[i][j]);&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     private void drawGrids(Graphics g) {&lt;br /&gt;
         // horizental&lt;br /&gt;
         g.drawLine(0, 200, 600, 200);&lt;br /&gt;
         g.drawLine(0, 400, 600, 400);&lt;br /&gt;
         &lt;br /&gt;
         // vertical&lt;br /&gt;
         g.drawLine(200, 0, 200, 600);&lt;br /&gt;
         g.drawLine(400, 0, 400, 600);&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     private void drawCell(Graphics g, int i, int j, int choice) {&lt;br /&gt;
         int ptX = i * 200 + 10;&lt;br /&gt;
         int ptY = j * 200 + 20;&lt;br /&gt;
        &lt;br /&gt;
         if( choice == __O ) {&lt;br /&gt;
             g.drawOval(ptX, ptY, 180, 180);&lt;br /&gt;
             //System.out.println(ptX + &amp;quot; &amp;quot; + ptX2);&lt;br /&gt;
         }&lt;br /&gt;
         else if( choice == __X ) {&lt;br /&gt;
             g.fillOval(ptX, ptY, 180, 180);&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     public static void main(String[] args) {&lt;br /&gt;
         new TicTacToe();&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
----&lt;br /&gt;
TicTacToe&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>