iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >java实现双人五子棋游戏
  • 305
分享到

java实现双人五子棋游戏

2024-04-02 19:04:59 305人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本文实例为大家分享了java实现双人五子棋游戏的具体代码,供大家参考,具体内容如下 通过 上下左右 控制棋盘走动  空格落子   (深度优先搜索) packag

本文实例为大家分享了java实现双人五子棋游戏的具体代码,供大家参考,具体内容如下

通过 上下左右 控制棋盘走动  空格落子   (深度优先搜索)

package day_1; 
 
import java.awt.*;
import javax.swing.*;
 
import java.awt.event.*;
 
public class CircleRun extends JFrame {
    
    MyPanel mp = null;
 
    public static void main(String[] args) {
        CircleRun cr = new CircleRun();
    }
 
    public CircleRun() {
 
        mp = new MyPanel();
        this.add(mp);
        this.addKeyListener(mp);
        this.setTitle("双人五子棋正式版3.0");
        this.setSize(518, 538);// 设置窗体大小
        this.setLocation(340, 50);// 设置出现的位置
        this.setVisible(true);// 设置为可见
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JOptionPane.showMessageDialog(this, "双人五子棋游戏说明:通过←↑→↓控制旗子走向,空格下子先满五个子胜利", "游戏说明", JOptionPane.WARNING_MESSAGE);
    }// 游戏说明
}
 
class Text2Frame {// 设置一个交互框
    JTextField jt1 = new JTextField(); // new一个文本框
    JTextArea jt2 = new JTextArea(); // new一个文本区
 
    JTextArea jt4 = new JTextArea(); // new一个文本区
 
    Text2Frame() {
 
        jscrollPane jsp = new JScrollPane(jt2); // new一个滚条
        String title = "正在思考。。。。";
        JFrame jf = new JFrame(title);
        Container container = jf.getContentPane();
        // container.setBackground(Color.yellow); //容器的背景色
        jf.setVisible(true); // 窗体可见
        jf.setLocation(150, 50);
        jf.setSize(300, 150); // 窗体大小
        jf.setLayout(new BorderLayout()); // 边界布局
        jf.add(BorderLayout.NORTH, jt1); // 文本框边界顶部放置
        jt1.setBackground(Color.yellow);
        jf.add(BorderLayout.CENTER, jt2); // 文本框边界中间放置
        jf.add(BorderLayout.EAST, jt4); // 文本框边界中间放置
        jt2.setBackground(Color.red);
 
        jt2.setFont(new Font("宋体", Font.PLAIN, 30));
 
    }
 
    void add(String a) {
        jt2.setText(a);
 
    }
 
};
 
class Text3Frame {
    JTextField jt1 = new JTextField(); // new一个文本框
    JTextArea jt2 = new JTextArea(); // new一个文本区
 
    JTextArea jt4 = new JTextArea(); // new一个文本区
 
    Text3Frame() {
 
        JScrollPane jsp = new JScrollPane(jt2); // new一个滚条
        String title = "当前坐标";
        JFrame jf = new JFrame(title);
        Container container = jf.getContentPane();
        // container.setBackground(Color.yellow); //容器的背景色
        jf.setVisible(true); // 窗体可见
        jf.setLocation(140, 180);
        jf.setSize(300, 200); // 窗体大小
        jf.setLayout(new BorderLayout()); // 边界布局
        jf.add(BorderLayout.NORTH, jt1); // 文本框边界顶部放置
        jt1.setBackground(Color.yellow);
        jf.add(BorderLayout.CENTER, jt2); // 文本框边界中间放置
        jf.add(BorderLayout.EAST, jt4); // 文本框边界中间放置
        jt2.setBackground(Color.green);
 
        jt2.setFont(new Font("宋体", Font.PLAIN, 30));
 
    }
 
    void add(String a) {
        jt2.setText(a);
 
    }
 
    String shu(int a, int b) {
        return "当前坐标(" + a + "," + b + ")";
    }
 
};
 
// 定义自己的面板
class MyPanel extends JPanel implements KeyListener {
    
    private static final long serialVersionUID = 4154597541232213984L;
    Text2Frame txw = new Text2Frame();
    Text3Frame txw3 = new Text3Frame();
    static JFrame sc = new JFrame();
    static int jishu = 1;
 
    static int summm = 1;
    static int summm2 = 1;
    static int arr[][] = new int[11][12];
 
    int x = 5;
    int y = 5;
    int sum = 0;
    int sum2 = 0;
    node n1 = new Node(x, y);
    seqlist kai = new seqlist(n1);
    seqlist seq = new seqlist(null);
    seqlist seq2 = new seqlist(null);
 
    static void soushang(int a, int b) {
 
        if (a - 1 < 1) {
 
            return;
 
        }
        if (arr[a - 1][b] == 1 && a - 1 > 0) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
 
            }
 
            soushang(a - 1, b);
 
        }
 
    }
 
    static void souxia(int a, int b) {
 
        if (a + 1 > 10) {
 
            return;
 
        }
        if (arr[a + 1][b] == 1 && a + 1 <= 10) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souxia(a + 1, b);
 
        }
 
    }
 
    static void souzuo(int a, int b) {
 
        if (b - 1 < 1) {
 
            return;
 
        }
        if (arr[a][b - 1] == 1 && b - 1 >= 1) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souzuo(a, b - 1);
 
        }
 
    }
 
    static void souyou(int a, int b) {
 
        if (b + 1 > 10) {
 
            return;
 
        }
        if (arr[a][b + 1] == 1 && b + 1 <= 10) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souyou(a, b + 1);
 
        }
    }
 
    static void soushangzuo(int a, int b) {
 
        if (a - 1 < 1 || b - 1 < 1) {
 
            return;
 
        }
        if (arr[a - 1][b - 1] == 1 && (a - 1 > 0) && (b - 1) > 0) {
 
            summm++;
 
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            soushangzuo(a - 1, b - 1);
        }
 
    }
 
    static void souxiazuo(int a, int b) {
 
        if (a + 1 > 10 || b - 1 < 1) {
 
            return;
 
        }
        if (arr[a + 1][b - 1] == 1 && (a + 1 <= 10) && (b - 1) >= 1) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souxiazuo(a + 1, b - 1);
        }
 
    }
 
    static void souyoushang(int a, int b) {
 
        if (a - 1 < 1 && b + 1 > 10) {
 
            return;
 
        }
        if (arr[a - 1][b + 1] == 1 && a - 1 >= 1 && b + 1 <= 10) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souyoushang(a - 1, b + 1);
        }
 
    }
 
    static void souyouxia(int a, int b) {
 
        if (b + 1 > 10 && a + 1 > 10) {
 
            return;
 
        }
        if (arr[a + 1][b + 1] == 1 && b + 1 <= 10 && a + 1 <= 10) {
 
            summm++;
            if (summm == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souyouxia(a + 1, b + 1);
        }
    }
 
    static void soushang2(int a, int b) {
 
        if (a - 1 < 1) {
 
            return;
 
        }
        if (arr[a - 1][b] == 2 && a - 1 > 0) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            soushang2(a - 1, b);
 
        }
 
    }
 
    static void souxia2(int a, int b) {
 
        if (a + 1 > 10) {
 
            return;
 
        }
        if (arr[a + 1][b] == 2 && a + 1 <= 10) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souxia2(a + 1, b);
 
        }
 
    }
 
    static void souzuo2(int a, int b) {
 
        if (b - 1 > 10) {
 
            return;
 
        }
        if (arr[a][b - 1] == 2 && b - 1 >= 1) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souzuo2(a, b - 1);
 
        }
 
    }
 
    static void souyou2(int a, int b) {
 
        if (b + 1 > 10) {
 
            return;
 
        }
        if (arr[a][b + 1] == 2 && b + 1 <= 10) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souyou2(a, b + 1);
 
        }
 
    }
 
    static void soushangzuo2(int a, int b) {
 
        if (a - 1 < 1 || b - 1 < 1) {
 
            return;
 
        }
        if (arr[a - 1][b - 1] == 2 && (a - 1 >= 1) && (b - 1) >= 1) {
 
            summm2++;
 
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            soushangzuo2(a - 1, b - 1);
        }
 
    }
 
    static void souxiazuo2(int a, int b) {
 
        if (a + 1 > 10 || b - 1 < 1) {
 
            return;
 
        }
        if (arr[a + 1][b - 1] == 2 && (a + 1 <= 10) && (b - 1) >= 1) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souxiazuo2(a + 1, b - 1);
        }
 
    }
 
    static void souyoushang2(int a, int b) {
 
        if (a - 1 < 1 && b + 1 > 10) {
 
            return;
 
        }
        if (arr[a - 1][b + 1] == 2 && a - 1 >= 1 && b + 1 <= 10) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souyoushang2(a - 1, b + 1);
        }
 
    }
 
    static void souyouxia2(int a, int b) {
 
        if (b + 1 > 10 && a + 1 > 10) {
 
            return;
 
        }
        if (arr[a + 1][b + 1] == 2 && b + 1 <= 10 && a + 1 <= 10) {
 
            summm2++;
            if (summm2 == 5) {
                for (int i = 0; i < 11; i++) {
                    for (int k = 0; k < 12; k++) {
                        arr[i][k] = 0;
                    }
 
                }
                System.out.println("胜利");
                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);
            }
 
            souyouxia2(a + 1, b + 1);
        }
    }
 
    public void paint(Graphics g) {
        if (jishu % 2 == 1) {
            String aaa = "红方开始下棋";
            txw.add(aaa);
 
        } else {
            String aaa = "绿方开始下棋";
            txw.add(aaa);
 
        }
 
        txw3.add(txw3.shu(x, y));
        super.paint(g);
        for (int i = 1; i <= 10; i++) {
            for (int k = 1; k <= 10; k++) {
                g.fillOval((i - 1) * 50, (k - 1) * 50, 50, 50);
            }
        }
        Color c = g.getColor();
 
        g.fillOval(x * 50, y * 50, 50, 50);
        Node now = seq.head;
        Node tou = kai.head;
        Color u = g.getColor();
        if (jishu % 2 == 1) {
            g.setColor(Color.red);
            g.fillOval((tou.a - 1) * 50, (tou.b - 1) * 50, 50, 50);
            g.setColor(u);
        } else {
            g.setColor(Color.green);
            g.fillOval((tou.a - 1) * 50, (tou.b - 1) * 50, 50, 50);
            g.setColor(u);
 
        }
 
        while (now != null) {
            System.out.print("(" + now.a + " " + now.b + ")");
            Color r = g.getColor();
            g.setColor(Color.red);
            g.fillOval((now.a - 1) * 50, (now.b - 1) * 50, 50, 50);
            g.setColor(r);
            now = now.next;
 
        }
        Node now2 = seq2.head;
        while (now2 != null) {
            System.out.print("(" + now2.a + " " + now2.b + ")");
            Color r = g.getColor();
            g.setColor(Color.green);
            g.fillOval((now2.a - 1) * 50, (now2.b - 1) * 50, 50, 50);
            g.setColor(r);
            now2 = now2.next;
 
        }
        System.out.println();
    }
 
    // 键的一个值被输出
    @Override
    public void keyTyped(KeyEvent e) {
 
    }
 
    // 键被按下
    @Override
 
    public void keyPressed(KeyEvent e) {
 
        System.out.print("线性表为");
 
        System.out.println();
        // System.out.println("键被按下"+e.geTKEyCode());
        if (e.getKeyCode() == KeyEvent.VK_DOWN) {
 
            // System.out.println("12");
 
            y = y + 1;
            if (y >= 11) {
                y = y % 11 + 1;
            }
 
        } else if (e.getKeyCode() == KeyEvent.VK_UP) {
            y = y - 1;
            if (y < 1) {
                y = y + 10;
            }
 
        } else if (e.getKeyCode() == KeyEvent.VK_LEFT) {
            x = x - 1;
            if (x < 1) {
                x = x + 10;
            }
        } else if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
 
            x = x + 1;
            if (x >= 11) {
                x = x % 11 + 1;
            }
 
        } else if (e.getKeyCode() == KeyEvent.VK_SPACE) {
            int luo1 = x;
            int luo2 = y;
 
            Node n2 = new Node(luo1, luo2);
            if (jishu % 2 != 0) {
                Node now3 = seq2.head;
                Node now2 = seq.head;
                int aaa = 1;
 
                if (arr[x][y] == 1 || arr[x][y] == 2) {
                    JOptionPane.showMessageDialog(sc, "此处已有棋子,请下别处", "错误", JOptionPane.WARNING_MESSAGE);
                    aaa = 2;
 
                }
 
                if (aaa == 1) {
 
                    jishu++;
                    seq.add(n2);
                    arr[luo1][luo2] = 1;
                    seq.tostring();
                    System.out.println("摁下空格");
                    soushang(x, y);
 
                    System.out.println("sum1" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
 
                    souxia(x, y);
                    System.out.println("sum2" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm = 1;
                    souzuo(x, y);
                    System.out.println("sum3" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
 
                    souyou(x, y);
                    System.out.println("sum4" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm = 1;
 
                    soushangzuo(x, y);
                    System.out.println("sum5" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
 
                    souyouxia(x, y);
                    System.out.println("sum6" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm = 1;
                    souyoushang(x, y);
                    System.out.println("sum7" + "  " + summm);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    souxiazuo(x, y);
                    if (summm == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm = 1;
                }
 
            } else {
                int aaa = 1;
 
                if (arr[x][y] == 1 || arr[x][y] == 2) {
                    JOptionPane.showMessageDialog(sc, "此处已有棋子,请下别处", "错误", JOptionPane.WARNING_MESSAGE);
                    aaa = 2;
 
                }
                if (aaa == 1) {
 
                    jishu++;
                    seq2.add(n2);
                    arr[luo1][luo2] = 2;
                    seq2.tostring();
                    System.out.println("摁下空格");
                    soushang2(x, y);
 
                    System.out.println("sum1" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
 
                    souxia2(x, y);
                    System.out.println("sum2" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm2 = 1;
                    souzuo2(x, y);
                    System.out.println("sum3" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
 
                    souyou2(x, y);
                    System.out.println("sum4" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm2 = 1;
 
                    soushangzuo2(x, y);
                    System.out.println("sum5" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
 
                    souyouxia2(x, y);
                    System.out.println("sum6" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm2 = 1;
                    souyoushang2(x, y);
                    System.out.println("sum7" + "  " + summm);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    souxiazuo2(x, y);
                    if (summm2 == 5) {
                        seq.head = null;
                        seq2.head = null;
                    }
                    summm2 = 1;
 
                }
            }
            for (int i = 1; i <= 10; i++) {
                for (int k = 1; k <= 10; k++) {
                    System.out.print(arr[i][k] + " ");
 
                }
                System.out.println();
 
            }
 
        }
        kai.huan(x, y);
 
        // 调用repaint()函数,来重绘界面
        this.repaint();
    }
 
    class Node {// 设置 节点类
        int a;
        int b;
        Node next;
 
        Node(int a, int b) {
            this.a = a;
            this.b = b;
            this.next = null;
        }
 
    }
 
    class seqlist {// 设置链表类
        Node head;
        Node tail;
 
        int n = 0;
 
        public seqlist(Node head) {
            // TODO Auto-generated constructor stub
            this.head = head;
            this.tail = head;
            n++;
        }
 
        void add(Node p) {
            Node now = head;
            p.next = now;
            head = p;
            n++;
 
        }
 
        void tostring() {
            Node now = head;
            System.out.print("线性表为");
            while (now != null) {
                System.out.print(now.a + ",");
                now = now.next;
            }
            System.out.println();
 
        }
 
        int length() {
            return n;
 
        }
 
        void insert(int a, Node b) {
            Node now1 = head;
            for (int i = 0; i < a - 1; i++) {
                now1 = now1.next;
            }
            b.next = now1.next;
            now1.next = b;
            n++;
        }
 
        void delete(int a) {
            Node now1 = head;
            for (int i = 0; i < a - 1; i++) {
                now1 = now1.next;
            }
            now1.next = now1.next.next;
            n--;
 
        }
 
        int geta(int n) {
            Node now1 = head;
            for (int i = 0; i < n - 1; i++) {
                now1 = now1.next;
 
            }
            return now1.a;
 
        }
 
        void huan(int a, int b) {
            head.a = a;
            head.b = b;
 
        }
 
        int getb(int n) {
            Node now1 = head;
            for (int i = 0; i < n - 1; i++) {
                now1 = now1.next;
 
            }
            return now1.b;
 
        }
 
    }
 
    // 键被释放
    @Override
    public void keyReleased(KeyEvent e) {
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: java实现双人五子棋游戏

本文链接: https://www.lsjlt.com/news/148099.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java实现双人五子棋游戏
    本文实例为大家分享了java实现双人五子棋游戏的具体代码,供大家参考,具体内容如下 通过 上下左右 控制棋盘走动  空格落子   (深度优先搜索) packag...
    99+
    2024-04-02
  • C语言实现双人五子棋游戏
    本文实例为大家分享了C语言实现双人五子棋游戏的具体代码,供大家参考,具体内容如下 实现功能 生成棋盘玩家1与玩家2对战,哪个玩家率先有连续5子连线,哪个玩家赢。 如何实现 组成: ...
    99+
    2024-04-02
  • C++实现图形界面双人五子棋游戏
    本文实例为大家分享了C++实现图形界面双人五子棋游戏的具体代码,供大家参考,具体内容如下 设计思路 定义一个Chess类,用16*16的二维数组的来表示一方棋手在棋局上的落子状态。通...
    99+
    2024-04-02
  • Java实现五子棋游戏
    本文实例为大家分享了Java实现五子棋游戏的具体代码,供大家参考,具体内容如下 一、功能分析 五子棋的实现还是较为简单的,通过下期的流程我们可以知道大概要实现一下功能: 1、格界面 ...
    99+
    2024-04-02
  • Java实现五子棋游戏(2.0)
    本文实例为大家分享了Java实现五子棋游戏的具体代码,供大家参考,具体内容如下 简介 相比之前,做出了以下修改: 1.新增菜单栏,将重新开始和退出的按钮移到了菜单栏;2.可以实时显示...
    99+
    2024-04-02
  • 微信小程序双人五子棋游戏如何实现
    今天小编给大家分享一下微信小程序双人五子棋游戏如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、项目展示微信小程序项...
    99+
    2023-06-30
  • Java如何实现五子棋游戏
    本篇内容介绍了“Java如何实现五子棋游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!简介相比之前,做出了以下修改:新增菜单栏,将重新开始...
    99+
    2023-06-30
  • python实现人人对战的五子棋游戏
    python五子棋之人人对战,供大家参考,具体内容如下 checkerboard.py from collections import namedtuple Chessman = ...
    99+
    2024-04-02
  • java开发实现五子棋游戏
    本文实例为大家分享了java实现五子棋游戏的具体代码,供大家参考,具体内容如下 此游戏具有双人对战功能和人机对战功能 一、游戏界面的实现 一个游戏首先从设计界面开始 1、首先创建一...
    99+
    2024-04-02
  • 微信小程序实战之双人五子棋游戏是实现
    目录一、项目展示二、项目核心代码三、效果展示一、项目展示 微信小程序项目实例——双人五子棋 双人五子棋是一款游戏小程序 两位选手可以在15x15的棋盘上 进行...
    99+
    2024-04-02
  • Java实现简易五子棋小游戏
    本文实例为大家分享了Java实现简易五子棋小游戏的具体代码,供大家参考,具体内容如下 五子棋是一个简单小游戏,首先我们先想想五子棋都有什么东西,棋子,棋盘; 首先我们可以定义一个棋子...
    99+
    2024-04-02
  • java实现简单的五子棋游戏
    目录一、主要界面二、功能概况三、代码部分四、部分效果展示本文实例为大家分享了java实现简单五子棋游戏的具体代码,供大家参考,具体内容如下 一、主要界面 1、登录界面;2、游戏选择界...
    99+
    2024-04-02
  • java五子棋小游戏实现代码
    前言 之前学完java基础课程,试着简单做了一下java的一个五子棋小游戏,记录下来。 界面 由于直接用的java库中的一些基本控件写的一个GUI,并没有做过多优化,感觉比较丑 下面...
    99+
    2024-04-02
  • java实现简易的五子棋游戏
    本文实例为大家分享了java实现简易五子棋游戏的具体代码,供大家参考,具体内容如下 先上效果图 一、问题分析 1、五子棋游戏分析: 五子棋作为较为普遍且简易的娱乐游戏,受到众多人的...
    99+
    2024-04-02
  • Java+Swing实现经典五子棋游戏
    目录前言主要需求主要设计功能截图代码实现总结前言 五子棋是世界智力运动会竞技项目之一,是一种两人对弈的纯策略型棋类游戏,是世界智力运动会竞技项目之一,通常双方分别使用黑白两色的棋子,...
    99+
    2024-04-02
  • python实现人机对战的五子棋游戏
    本文实例为大家分享了python实现五子棋游戏的具体代码,供大家参考,具体内容如下 checkerboard.py from collections import namedtupl...
    99+
    2024-04-02
  • Python实现双人五子棋对局
    本文实例为大家分享了Python实现双人五子棋对局的具体代码,供大家参考,具体内容如下 效果: 自己需要两个棋子: 服务器玩家全部代码: # 案列使用TCP连接 # 这是服务器端...
    99+
    2024-04-02
  • C++实现五子棋小游戏
    本文实例为大家分享了C++实现五子棋小游戏的具体代码,供大家参考,具体内容如下 思路:先用用system(“color 70”)改变控制台的背景色为灰白色,前...
    99+
    2024-04-02
  • python怎么实现人人对战的五子棋游戏
    这篇文章主要介绍“python怎么实现人人对战的五子棋游戏”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python怎么实现人人对战的五子棋游戏”文章能帮助大家解决问题。checkerboard.p...
    99+
    2023-06-30
  • python实现五子棋双人对弈
    本文实例为大家分享了python实现五子棋双人对弈的具体代码,供大家参考,具体内容如下 我用的是pygame模块来制作窗口 代码如下: # 1、引入pygame 和 pygame.l...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作