A. java中國象棋游戲編程中如何分別設置好象棋的選定以及對象棋進行移動
面向對象的編程的多態性咯~
寫一個棋類,然後子類繼承的時候重寫MOVE方法。
B. 用JAVA寫象棋代碼,炮的規則和車的規則怎麼寫 這題沒有錢的 我發錯了
車的規則就是 目標點 不能超過前面的第一個人。
炮的規則就是 目標點 必須超過前面的第一個 不超過前面的第二個人。
C. chinesechess游戲中沒有道具怎麼辦
chinesechess游戲是需要去購買道具。
游戲介紹:
象棋,亦作「象碁」、中國象棋(英文名Chinese chess),中國傳統棋類益智游戲,在中國有著悠久的歷史,先秦時期已有記載。
屬於二人對抗性游戲的一種,由於用具簡單,趣味性強,成為流行極為廣泛的棋藝活動。主要流行於華人及漢字文化圈的國家,象棋是中國正式開展的78個體育運動項目之一,是首屆世界智力運動會的正式比賽項目之一。
一個中國象棋的java實現程序。中國象棋在中國有著悠久的歷史,屬於二人對抗性游戲的一種。本例將使用java來演示如何創建一個中國象棋游戲。
象棋,中國象棋(英文名Chinese chess),中國傳統棋類益智游戲,在中國有著悠久的歷史,先秦時期已有記載。屬於二人對抗性游戲的一種,由於用具簡單,趣味性強,成為流行極為廣泛的棋藝活動。
D. java編程實現中國象棋中馬的走位以及輸出。
簡化一下,假設馬不走回頭路,一直向右
public class ChessHorse
{
static final int X=8;
static final int Y=4;
public void gossip(int x,int y)
{
while((x<=X)&&(y<=Y))
{
System.out.println("("+x+","+y+")");
x+=2;
y++;
}
}
public static void main(String[] args)
{
ChessHorse horse=new ChessHorse();
System.out.println("馬的走位:");
horse.gossip(0,0);
}
}
E. 在網上了一段中國象棋的java源代碼,可是總出現錯誤,錯誤是指向類,說的是找不到符號,求解
把代碼錯誤提示貼出來,還有這些大部分是找不到JAR文件導致
以免其他原因請把中文改成英文
找不到符號基本是找不到引用的類
F. java怎麼編寫中國象棋
這個屬於java.swing裡面的知識,只要學了,在加一點點演算法就可以弄出來。
G. 給出中國象棋的棋盤 用java代碼描述「x」的走法
如果你有點編程基礎的話 我就不羅嗦了
棋盤自然是二維數組了 你用什麼方法存儲自己選了
不知道你說的X 是啥東西 如果是象 那我說說吧
以前我也考慮過做象棋的游戲
首先象的行走為 對角線
對角線的特點就是 橫縱坐標的值操作相同 即加或者減 都為相同的數 比如 X+2 Y-2
以XY坐標系來說
象有4個方向可以走 假設當前的象處在 0點 也就是原點 那麼四個方向 分別是
1 . X+2 Y+2
2. X-2 y+2
3. X+2 Y-2
4. X-2 Y-2
以此種方式可以知道 它所移動的方向是什麼
比如 當前為 0,0 如果 它要移動到坐標2,2 則說明想方向1去移動了
判斷移動方向後 判斷是否有別腿現象
當然 就是不是+2的位置 而是+1的位置
比如要移動到X+2 Y+2 則判斷 X+1 y+1的位置是否有棋子
好了 說這么多 不知道你明白不 哎...
H. java象棋登錄界面的代碼
你可參考:http://..com/question/127345147.html?qbl=relate_question_0&word=java%CF%F3%C6%E5%B5%C7%C2%BC%BD%E7%C3%E6%B5%C4%B4%FA%C2%EB
還有這個;
package java1;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.Rectangle;
import java.awt.Font;
public class login extends JFrame
{
public login() {
try {
jbInit();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
public static void main(String[] args)
{
login frm=new login();
frm.setBounds(300,200,300,260);
frm.setVisible(true);
}
private void jbInit() throws Exception {
this.getContentPane().setLayout(null);
jLabel1.setForeground(Color.red);
jLabel1.setText("用戶名");
jLabel1.setBounds(new Rectangle(25, 72, 68, 29));
jButton2.setBounds(new Rectangle(142, 159, 81, 30));
jButton2.setText("取消");
jButton2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton2_actionPerformed(e);
}
});
jButton1.setBounds(new Rectangle(38, 159, 81, 29));
jButton1.setText("確定");
jButton1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton1_actionPerformed(e);
}
});
jTextField1.setBounds(new Rectangle(109, 79, 136, 23));
jPasswordField1.setBounds(new Rectangle(109, 115, 136, 23));
this.getContentPane().add(jLabel1);
jLabel3.setFont(new java.awt.Font("隸書", Font.PLAIN, 24));
jLabel3.setText("學 生 考 試 系 統");
jLabel3.setBounds(new Rectangle(22, 15, 268, 47));
this.getContentPane().add(jTextField1);
this.getContentPane().add(jLabel2);
this.getContentPane().add(jButton2);
this.getContentPane().add(jButton1);
this.getContentPane().add(jLabel3);
this.getContentPane().add(jPasswordField1);
jLabel2.setForeground(Color.red);
jLabel2.setText("密碼");
jLabel2.setBounds(new Rectangle(26, 112, 68, 29));
}
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JTextField jTextField1 = new JTextField();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JLabel jLabel3 = new JLabel();
JPasswordField jPasswordField1 = new JPasswordField();
main2 wo=new main2();
int sum;
//判斷許可權的方法
public void success()
{
try{
ResultSet rs1;
String s1="select * from 管理許可權 where name='"+jTextField1.getText()+"' and password='"+jPasswordField1.getText()+"'";
rs1=sqlcx.Rs_jiluji(s1);
rs1.first();
sum=Integer.parseInt((String)(rs1.getString(3)));
System.out.println(sum);
very();
}
catch(Exception c)
}
//根據許可權設置窗口
public void very()
{
if (sum==1)
{JOptionPane.showOptionDialog(this, "您現在是以教師許可權登陸", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
JOptionPane.showOptionDialog(this, "你現在是以學生許可權登陸", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
wo.jButton2.setVisible(false);
wo.jButton3.setVisible(false);
wo.jButton4.setVisible(false);
wo.jButton5.setVisible(false);
wo.jButton6.setVisible(false);
wo.jButton7.setVisible(false);
wo.jButton8.setVisible(false);
wo.jMenu2.setVisible(false);
wo.jMenu3.setVisible(false);
wo.jMenu4.setVisible(false);
}
}
public void jButton1_actionPerformed(ActionEvent e)
{
//判斷用戶名是否為空
if (jTextField1.getText().length() == 0) {
JOptionPane.showOptionDialog(this, "用戶名不能為空", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
//判斷密碼是否為空
else if (jPasswordField1.getText().length()==0)
{
JOptionPane.showOptionDialog(this,"密碼不能為空", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
try
{
ResultSet rs;//聲明記錄集
String sql="select * from 管理許可權 where name='"+jTextField1.getText()+"'";
rs = sqlcx.Rs_jiluji(sql);
if (rs.next())
{
if(jPasswordField1.getText().equals(rs.getString(2)))
{
success();
wo.setBounds(60,40,700,600);
wo.setVisible(true);
this.dispose();
}
else
{
JOptionPane.showOptionDialog(this,"密碼錯誤", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
else
{
JOptionPane.showOptionDialog(this,"沒有所要找的用戶名", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
catch(Exception c){
JOptionPane.showOptionDialog(this,"連接資料庫失敗", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
}
public void jButton2_actionPerformed(ActionEvent e) {
System.exit(0);
}
}
I. 求要中國象棋將,帥的走法的JAVA代碼
int[][] loaction=new int[10][9];
左帥:loaction[0][4];
X X X
X X
X X X
-----
[0][3] [1][3] [2][3]
[0][4] [1][4] [2][4]
[0][5] [1][5] [2][5]
即:x>=0 && x<=2 && y>=3 && y<=5
------------------------------
右將:loaction[9][4];
X X X
X X
X X X
-----
[7][3] [8][3] [9][3]
[7][4] [8][4] [9][4]
[7][5] [8][5] [9][5]
---------------------------
public int go(int x,int y,int path,int len){
if(loaction[x][y]==1) {//是帥
if(path==1){//向左
if(x<=0) return -1;//返回-1代表走發錯誤
else {loaction[x-1][y]=1;loaction[x][y]=-1;}//將左一個格子標記為帥
}
else if(path==2){//向上
...
}
else if(path==3){//向右
...
}
else if(path==4){//向下
...
}//else path
}//if key
else if(loaction[x][x]==2){//2代表將
....
}//if key
}
車就差不多了
J. 中國象棋走法規則用Java怎麼編程
我並不懂編程,但是還是希望以下答案對你有幫助!
棋盤自然是二維數組了 如果是象 那我說說吧以前我也考慮過做象棋的游戲首先象的行走為 對角線對角線的特點就是 橫縱坐標的值操作相同 即加或者減 都為相同的數 比如 X+2 Y-2以XY坐標系來說象有4個方向可以走 假設當前的象處在 0點 也就是原點 那麼四個方向 分別是1 . X+2 Y+22. X-2 y+23. X+2 Y-24. X-2 Y-2以此種方式可以知道 它所移動的方向是什麼比如 當前為 0,0 如果 它要移動到坐標2,2 則說明想方向1去移動了判斷移動方向後 判斷是否有別腿現象 當然 就是不是+2的位置 而是+1的位置比如要移動到X+2 Y+2 則判斷 X+1 y+1的位置是否有棋子