新手求教 我已经装了jdk 想写java小程序 比如求五子棋,我还要jdk是做什么的准备工作呢?

《JAVA五子棋程序设计》课程设计_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
软件工程师
评价文档:
《JAVA五子棋程序设计》课程设计
《​J​A​V​A​五​子​棋​程​序​设​计​》​j​a​v​a​课​程​设​计
阅读已结束,如果下载本文需要使用
想免费下载本文?
文档试读已结束,请登录后查看剩余内容!
你可能喜欢求JAVA五子棋程序_百度知道
求JAVA五子棋程序
求JAVA五子棋程序。要求:1、代码风格良好。2、注释完备,对于主要的类,都要有注释。3、对于程序,界面友好。不要求程序能实现人机对抗,人人即可。4、最好为自己写的。5、程序无故障,无错误,能在Eclipse,jdk1.6.0_16下稳健运行。6、可追加分。(PS:在网上找到的代码结果都不好使,提示“小程序未格式化”。本人乃JAVA菜鸟,望提供准确的代码。代码以经运行确认无误后即给分)
提问者采纳
import java.util.*;public class FiveChess {
public static void main(String[] args) {
char[][] state=new char[16][16];
for(int i=0;i&state.i++){
for(int j=0;j&state.j++){
state[i][j]='*';
boolean isBlack=//当前是黑方下子
Scanner in=new Scanner(System.in);
printState(state);
while(true){
System.out.println(&请&+(isBlack?&黑&:&白&)+&方下子:&);
String input=in.next();
if(input.equals(&exit&)){
int x=input.charAt(0)-'a';
int y=input.charAt(1)-'a';
if(state[x][y]!='*'){
System.out.println(&该位置已经有棋子,请重新指定坐标!&);
state[x][y]=(isBlack?'@':'O');
printState(state);
if(isWin(state,isBlack,x,y)){
System.out.println((isBlack?&黑&:&白&)+&方胜利!&);
isBlack=!isB
public static void printState(char[][] state){
for(int i=0;i&state.i++)
System.out.print((char)('a'+i)+&
for(int j=0;j&state.j++){
System.out.print(state[i][j]+&
System.out.println();
System.out.print(&
for(int i=0;i&state[0].i++){
System.out.print((char)('a'+i)+&
System.out.println();
public static boolean isWin(char[][] state,boolean isBlack,int x,int y){
//char c=isBlack?'@':'O';
return isShuipingWin(state,isBlack,x,y)||isChuizhiWin(state,isBlack,x,y)||
isZuoXieWin(state,isBlack,x,y)||isYouXieWin(state,isBlack,x,y);
public static boolean isShuipingWin(char[][] state,boolean isBlack,int x,int y){
char c=isBlack?'@':'O';
int count=0;
while(y&=0&&state[x][y]==c);
while(y&state[x].length&&state[x][y+1]==c){
if(y==state[x].length-1){
if(count==5){
public static boolean isChuizhiWin(char[][] state,boolean isBlack,int x,int y){
char c=isBlack?'@':'O';
int count=0;
while(x&=0&&state[x][y]==c);
while(x&state.length&&state[x+1][y]==c){
if(x==state.length-1){
if(count==5){
public static boolean isYouXieWin(char[][] state,boolean isBlack,int x,int y){
char c=isBlack?'@':'O';
int count=0;
while((x&=0&&y&=0)&&state[x][y]==c);
while(x&state.length&&y&state[0].length&&state[x+1][y+1]==c){
if(x==state.length-1||y==state[0].length-1){
if(count==5){
public static boolean isZuoXieWin(char[][] state,boolean isBlack,int x,int y){
char c=isBlack?'@':'O';
int count=0;
while((x&=0&&y&=state[0].length-1)&&state[x][y]==c);
while(x&state.length&&y&0&&state[x+1][y-1]==c)
if(x==state.length-1||y==0){
if(count==5){
其他类似问题
为您推荐:
五子棋的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁求助高手:我的JDK装好之后,输入java 和java -version都没问题,但是输入javac检查却有问题这是什么原因_百度知道
求助高手:我的JDK装好之后,输入java 和java -version都没问题,但是输入javac检查却有问题这是什么原因
输入javac后出现 “不是内部或外部命令,也不是可运行的程序&等字样,怎么回事? 是不是path环境变量出问题了,我发现 JDK 安装以后,有俩个地方可以看到JDK一个是E盘一个是 C盘那我的PATH环境变量里路径填那个?path=C:\Program Files\Java\jdk1.6.0_1\%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\W%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\80\Tools\Binn看看是不是出现问题了
提问者采纳
环境变量的意思是,你在领命行输入命令时,在环境变量指定的所有目录中搜索并调用相应命令,如果出现 “不是内部或外部命令,也不是可运行的程序&等字样,那就是没加进去路径,C:\Program Files\Java\jdk1.6.0_1\自己看看这个目录下肯定没有javac程序。
解决办法:找到javac所在路径,添加进path。
,里面有 javac
在CMD中跳转到C:\Program Files\Java\jdk1.6.0_1\bin目录(命令:cd /d C:\Program Files\Java\jdk1.6.0_1\bin)运行javac 试下。
提问者评价
其他类似问题
为您推荐:
其他1条回答
Java的环境变量配置很简单的如果你的jdk安装在了D:\Pros\Java\jdk6\目录下在D:\Pros\Java\jdk6\目录下有bin、include、jre、lib等目录那么JAVA_HOME=D:\Pros\Java\jdk6CLASSPATH=.;%JAVA_HOME%\lib\dt.%JAVA_HOME%\lib\tools.PATH就在变量值的最前面加上 %JAVA_HOME%\配置完成后点击确定使其生效然后重新打开命令提示符输入javac -version显示版本信息即说明正常JAVA_HOME的变量值需要按照你自己安装的路径填写CLASSPATH的变量值可以直接拷贝过去使用PATH前面添加的也可以直接拷贝到最前面去就可以了 你看下你的%JAVA_HOME%\bin这个目录下有没有javac.exe和java.exe就知道是不是你当时安装所选择的路径了
jdk的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁我是Java初学者,在记事本里写了一个小程序,也装好JDK了,但是不知如何运行,请指点。_百度知道
我是Java初学者,在记事本里写了一个小程序,也装好JDK了,但是不知如何运行,请指点。
最简单的HelloWorld程序。
提问者采纳
public class A{static{System.out.println(&aa&);System.exit(0);}}这是最简单的程序了,连main方法都没有,哈哈!安装jdk以后 比如安装在d:/jdk 进入bin目录,d:/jdk/bin右键我的电脑-属性-高级-环境变量,有一个path变量,把值改为d:/jdk/bin,然后进dos,即运行cmd,比如你把文件保存在了c盘,并命名为A.java,在dos下c盘运行javac A.java然后运行java A就打印出来了
提问者评价
其他类似问题
为您推荐:
jdk的相关知识
其他9条回答
首先文件名保存成.java 的文件,文件名要和你文件里的public类的名字一样,如果没有public类,就和任意一个类名相同就行了.然后保存在e:底下,进入命令行,进入e:目录下,也就是你保存文件的目录中,写上javac helloWorld.java 也就是javac 文件名,,编译成功后会没有任何提示,然后和java helloWorld运行,java 后边跟的是主类的名字,也就是你的文件中包含main方法的类的名字.不明白的话可加我Q,.
先把你编的代码保存在C盘-Progrm Files_jdk1.5-07-bin保存类型为所有文档在打开开始菜单运行在其中输入
你没有一本教程吗? 这个应该是最基本的了。教程里也应该说的很详细。。。。。难道你直接跳过学hibernate?
这样你把文件名命名为你的类名,记得一定大小写必须一样,然后把后缀名改为 java 。例如:你的类名是Hello,那么你的文件名就是Hello.java之后你就打开开始菜单,点击运行,再里面输入cmd到控制台,然后到你文件存放的目录下,假如你存在f:盘下,那么就输入 f:再回车,然后输入 javac空格Hello.java 再按回车,如果没报错,那你就继续输入 java空格Hello 这样就可以了。
首先,你要明白java是区分大小写的.然后吧你要保存的文件保存成扩展名为.java的文件然后用javac进行编译java文件格式是javac 你要编译的文件完整路径+文件名然后用java进行运行格式java 文件名还有一点需要注意的是,编译时需要加文件的扩展名,运行时就不需要加扩展名了
这是100分的问题?!
首先要配置好JDK的环境变量,可以百度搜一下,这方面的资料很多的,然后在DOS窗口下,“运行”-》cmd-&进入到源程序所在的当前文件夹,输入 javac 文件名.java ,如果没有错误,再输入java 文件名,这样就可以了
先配置好jdk环境,这个你可以去百度搜索jdk的环境配置很多的。配置好之后开始 运行 输入 cmd 输入java和javac测试一下环境配置是否正确如果正确就行了先编译你的文件javac helloworld.java编译成功在java helloworld
你在装个eclipse他编译你的java程序很方便的。。。。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁会算法的进来!! 求一个完整的五子棋算法,我要做一个java的五子棋小游戏,求一个完整的算法_百度知道
会算法的进来!! 求一个完整的五子棋算法,我要做一个java的五子棋小游戏,求一个完整的算法
不会的童鞋就别参合了,求完整啊
提问者采纳
任何一种棋类游戏其关键是对当前棋局是否有正确的评分,评分越准确则电脑的AI越高。五子棋游戏也是如此,但在打分之前,我们先扫描整个棋盘,把每个空位从八个方向上的棋型填入数组gStyle(2, 15, 15, 8, 2),其中第一个下标为1时表示黑棋,为2时表示白棋,第二和第三个下标表示(x,y),第四个下标表示8个方向,最后一个下标为1时表示棋子数,为2时表示空格数,如:gStyle(1,2,2,1,1)=3表示与坐标(2,2)在第1个方向上相邻的黑棋棋子数为3gstyle(1,2,2,1,2)=4表示与坐标(2,2)在第1个方向上的最近的空格数为4在定义方向时,也应该注意一定的技巧,表示两个相反的方向的数应该差4,在程序中我是这样定义的:Const DIR_UP = 1Const DIR_UPRIGHT = 2Const DIR_RIGHT = 3Const DIR_RIGHTDOWN = 4Const DIR_DOWN = 5Const DIR_DOWNLEFT = 6Const DIR_LEFT = 7Const DIR_LEFTUP = 8这样我们前四个方向可以通过加四得到另一个方向的值。如果你还是不太明白,请看下面的图:---------------------oo-----ox*xx---------------------图中的*点从标为(4,4),(打*的位置是空位),则:gStyle(2,4,4,1,1)=1在(4,4)点相邻的上方白棋数为1gStyle(2,4,4,1,2)=2在(4,4)点的上方距上方白棋最近的空格数为2gStyle(1,4,4,3,1)=2在(4,4)点相邻的右方黑棋数为2gStyle(1,4,4,3,2)=1在(4,4)点的右方距右方黑棋最近的空格数为3... 一旦把所有空点的棋型值填完,我们很容易地得出黑棋水平方向上点(4,4)的价值,由一个冲1(我把有界的棋称为冲)和活2(两边无界的棋称为活)组成的。对于而白棋在垂直方向上点(4,4)的价值是一个活1,而在/方向也是活1所以,只要我们把该点的对于黑棋和白棋的价值算出来,然后我们就取棋盘上各个空点的这两个值的和的最大一点作为下棋的点。然而,对各种棋型应该取什么值呢?我们可以先作如下假设: Fn 表示先手n个棋子的活棋型,如:F4表示先手活四 Fn'表示先手n个棋子的冲棋型,如:F4'表示先手冲四 Ln 表示后手n个棋子的活棋型,如:L3表示后手活三 Ln'表示后手n个棋子的冲棋型,如:L3'表示后手冲三 . . .  根据在一行中的棋型分析,得到如下关系:L1'&=F1'&L2'&=F2'&=L1&F1&L2&F2&L3'&=F3'&L4'&F4'=F4  从这个关系包含了进攻和防守的关系(当然,这个关系是由我定的,你可以自己定义这些关系)。对这些关系再进一步细化,如在一个可下棋的点,其四个方向上都有活三,也比不上一个冲四,所以我们可以又得到4*F3&L4'这个关系,同样,我们还可以得到其它的关系,如:4*F2&L3、4*L3&F3...,这些的关系由于你的定法和我的定法制可能不一样,这样计算机的AI也就不一样,最后我们把分值最小的L1'值定为1,则我们就得到了下面各种棋型的分值,由C语言表示为:F[2][5]={{0,2,5,50,16000},{0,10,30,750,16000}};L[2][5]={{0,1,5,50,3750},{0,10,30,150,4000}};  F数组表示先手,第一个下标为0时表示冲型,第二个下标表示棋子数,则F2'对应F[0][2]L数组表示后手,第一个下标为0时表示冲型,第二个下标表示棋子数,则L2对应F[1][2]Ok,棋型的分值关系确定好了以后,我们把每一个可下点的四个方向的棋型值相加(包括先手和后手的分值),最后选择一个最大值,并把这一点作为计算机要下的点就OK了:)。后话:1、得到最大值也许不止一个点,但在我的程序中只选择第一个最大点,当然你可以用于个随机数来决定选择那一个最大值点,也可以对这些最大值点再作进一步的分析。2、在这个算法中我只考虑了周围有棋子的点,而其它点我没有考虑。3、可以再更进一步,用这个算法来预测以后的几步棋,再选择预测值最好的一步,这样电脑的AI就更高了4、这个算法没有考虑黑棋的禁手(双3、双四和多于五子的连棋)。因为在平时我下的五子棋是没有这些禁手的。
提问者评价
其他类似问题
为您推荐:
五子棋的相关知识
其他2条回答
以下是我的代码
输入坐标(i,j)就可以运行了
package com.tarena.day07.
import java.util.S
public class GoGang {
* @param args
public static void main(String[] args) {
int space = 0;
int black = 1;
int white = 2;
String[] chessName = {&空&,&黑&,&白&};
int[] board = new int[16*16];
//定义一个棋盘
Scanner console = new Scanner(System.in);
int idx = 0;
while(true){
print(board);
//调用打印棋盘的方法
int color = idx++%2+1;//执黑先行(1,2,1,2,1,2)
System.out.print(&请 &+chessName[color]+& 方下子(i j):&);
i = consol...
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 五子棋技巧 的文章

 

随机推荐