Qt编写的黑白棋游戏 其中人机算法和落子有很大的问题 希望又人能帮忙解决一下 [问题点数:20分]

Bbs1
本版专家分:0
结帖率 0%
Bbs5
本版专家分:2198
Blank
黄花 2019年5月 C/C++大版内专家分月排行榜第二
Blank
蓝花 2019年6月 C/C++大版内专家分月排行榜第三
黑白棋落子
<em>黑白棋</em>(<em>落子</em>) 时限:1000ms 内存限制:10000K 总时限:3000ms 描述: 经过前3题的热身相信大家已经对<em>黑白棋</em>有了一定的认识,下面我们来<em>编写</em>稍微复杂一点的模块。<em>黑白棋</em>并不像5子棋或者围棋一样可以在任意空白处下子,那么检测某个位置是否可以下子(如对规则还不是很了解,请参照前3题的规则介绍),也是我们<em>黑白棋</em>AI<em>算法</em>会经常调用的模块。下面需要同学们<em>编写</em>这一检测模块。
黑白棋落子
那么检测某个位置是否可以下子
黑白棋落子条件判定
int canspace(int a[8][8], int row, int col, int num ,int color) //row,col行列坐标,num方向向量,1黑棋,2白棋
人机大战黑白棋游戏源码
<em>人机</em>大战<em>黑白棋</em><em>人机</em>大战<em>人机</em>大战<em>黑白棋</em><em>人机</em>大战<em>黑白棋</em><em>黑白棋</em><em>人机</em>大战<em>黑白棋</em>
黑白棋落子状态改变
己方<em>落子</em>后对面棋子的状态发生变化,转化为己方棋子,<em>黑白棋</em>中重要的子模块之一,输入<em>落子</em>点和初始棋盘,输出变化后棋盘
C++——黑白棋落子
 <em>黑白棋</em>(<em>落子</em>) 时限:1000ms 内存限制:10000K 总时限:3000ms 描述: 经过前3题的热身相信大家已经对<em>黑白棋</em>有了一定的认识,下面我们来<em>编写</em>稍微复杂一点的模块。<em>黑白棋</em>并不像5子棋或者围棋一样可以在任意空白处下子,那么检测某个位置是否可以下子(如对规则还不是很了解,请参照前3题的规则介绍),也是我们<em>黑白棋</em>AI<em>算法</em>会经常调用的模块。下面需要同学们<em>编写</em>这一检测模块。
基于QT的黑白棋游戏
基于QT的<em>黑白棋</em><em>游戏</em>,毕业设计.本程序使用的是面向对象的QT库的C++语言,开发可以同时运行于Linux和Windows环境下的<em>游戏</em>程序。有双人对弈,<em>人机</em>对弈,无限悔棋等功能,<em>其中</em><em>人机</em>对弈包含难度选择和先后手选择。
希望版主能帮忙解决一下
asp.net程序原先运行无<em>问题</em>,Win2000server升级成目录服务器后,dotnet调试程序就出错,提示信息为"无法调试,灾难性故障",请问高手,why?rn我也找了相关资料,尤其是MSDN上的"ASP.NET 在域控制器上使用默认 ASPNET 帐户不能正常运行",还是不行,记得在公司的时候也没有这样设过呀,我现在是asp.net1.1,按文章说的应该不用设置访问帐户了.急,请版主<em>帮忙</em>.thanks
希望人能解决一下,关于datagrid的再绑定问题
我遇到一个头疼的<em>问题</em>,已经两天了。rn我将后台数据绑定到一个DATAGRID,<em>其中</em>我在DATAGRID中加入了许多TEXTBOX 和 dropdownlist控件,然后在WEB端让客户可以修改和选择选择数据。rn我认为datagrid中的数据可以用MYDATASET = (DataSet)MyDataGrid.DataSource;得到,然后对dataset进行操作就可以了,但系统报错:“未将对象引用设置到对象的实例。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。”rn这样我又自己生成了一个新的dataset,将datagrid中的数据一行行取到dataset中,确认无误,新的DATASET中的值对,同datagrid中一致。但我用:rnMyDataGrid.DataSource = getDataFromGridToDataSet().Tables["Customers"].DefaultView;rnMyDataGrid.DataBind();rn重新绑定时,刚才的错误信息又出现了,我想问<em>一下</em>。 我的相关代码如下:rn private DataSet getDataFromGridToDataSet()rn rn DataSet myDataSet = new DataSet("myDataSet");rn DataTable tCust = new DataTable("Customers");rn DataColumn cCustID = new DataColumn("RemoveID", typeof(string));rn DataColumn cCode = new DataColumn("cCode", typeof(string));rn DataColumn cCustName = new DataColumn("CustName",typeof(string));rn DataColumn cSl = new DataColumn("cSl",typeof(string));rn DataColumn cUnit = new DataColumn("cUnit",typeof(string));rn DataColumn cPrice = new DataColumn("cPrice",typeof(string));rn DataColumn cPh = new DataColumn("cPh",typeof(string));rn tCust.Columns.Add(cCustID);rn tCust.Columns.Add(cCode);rn tCust.Columns.Add(cCustName);rn tCust.Columns.Add(cSl);rn tCust.Columns.Add(cUnit);rn tCust.Columns.Add(cPrice);rn tCust.Columns.Add(cPh);rnrn rn myDataSet.Tables.Add(tCust);rn for (int i = 0; i < 8; i++) rn rn CheckBox Cb= (CheckBox)MyDataGrid.Items[i].Cells[0].Controls[1];rn TextBox TbCode = (TextBox)MyDataGrid.Items[i].Cells[1].Controls[1];rn Label TbCN = (Label)MyDataGrid.Items[i].Cells[3].Controls[1];rn TextBox Tbsl = (TextBox)MyDataGrid.Items[i].Cells[4].Controls[1];rn DropDownList Tbunit = (DropDownList)MyDataGrid.Items[i].Cells[5].Controls[1];rn DropDownList Tbprice = (DropDownList)MyDataGrid.Items[i].Cells[6].Controls[1];rn TextBox Tbph = (TextBox)MyDataGrid.Items[i].Cells[7].Controls[1];rnrn DataRow newRow1;rn newRow1 = tCust.NewRow();rn tCust.Rows.Add(newRow1);rn if (Cb.Checked == true)rn rn tCust.Rows[i][0] = "1";rn rn elsern rn tCust.Rows[i][0] = "0";rn rn tCust.Rows[i][1] = TbCode.Text;rn tCust.Rows[i][2] = TbCN.Text;rn tCust.Rows[i][3] = Tbsl.Text;rn tCust.Rows[i][4] = Tbunit.SelectedItem.Text;rn tCust.Rows[i][5] = Tbprice.SelectedItem.Text;rn tCust.Rows[i][6] = Tbph.Text;rn rn return myDataSet;rn rnrn private void Button2_Click(object sender, System.EventArgs e)rn rn rn rn MyDataGrid.DataSource = getDataFromGridToDataSet().Tables["Customers"].DefaultView;rn MyDataGrid.DataBind();rnrnrnrn
希望帮忙解决一下
if thisform.text1.value=""rn messagebox("请输入金额")rn thisform.text1.setfocusrnendif rnrn我的要求是如果text1里的值为空,那么就提示messagebox里的内容"请输入金额"rn可是显示了messagebox的信息,点了确定,我在text1里输入值了,messagebox怎么再次调用了,还是提醒我“请输入金额”我还少写什么了?rnrn谢谢
急,希望有高手帮忙解决一下
当在LISTVIEW按<em>一下</em>滚动条的时候都是向下移一条项目的,但用SENDMESSAGE发一条WM_MOUSEWHEEL信息给LISTVIEW的时候却一次过的向下移动了三下,请问有什么<em>解决</em>的办法可以令到用SENDMESSAGE都可以只向下移动一次呢rnSendMessage ListView1.hwnd, WM_MOUSEWHEEL, -78643200, Nullrn
人机对战-黑白棋
<em>黑白棋</em><em>人机</em>对战
黑白棋人机对战
这是一个<em>人机</em>对战的<em>黑白棋</em>程序。
用汇编语言编写黑白棋游戏
用汇编语言<em>编写</em>的<em>黑白棋</em><em>游戏</em>!!自己做的课程设计
使用labview编写黑白棋游戏
使用labview<em>编写</em>的<em>黑白棋</em><em>游戏</em>,很有意思的东西,需要学习labview的同学可以下载看看,十分有用的文件
C语言编写黑白棋游戏
这是一个基本的使用C语言<em>编写</em>简单的<em>游戏</em>程序,<em>希望</em>能对大家有所帮助
一个Delphi编写黑白棋游戏
我<em>编写</em>的<em>黑白棋</em><em>游戏</em> QQ173983537
黑白棋人机
QT编程<em>黑白棋</em><em>人机</em>对战,资源不全,小心下载
Python实现黑白棋人机对弈
Python实现<em>黑白棋</em><em>人机</em>对弈 简书:Python实现<em>黑白棋</em><em>人机</em>对弈https://www.jianshu.com/p/37191dffbe07 规则 <em>黑白棋</em>的每颗棋子由黑白两色组成,一面白,一面黑。每次<em>落子</em>,把本方颜色的棋子放在棋盘的空格上,若在横、竖、斜八个方向的任一方向上有本方棋子,则被夹在中间的对手棋子全部翻转为本方棋子颜色;并且,仅在可以翻转棋子的地方才能<em>落子</em>。如果一方至少有一步合法...
关于黑白棋人机对战
请教大神rn<em>黑白棋</em><em>人机</em>对战函数怎么判断可以下子的格子?rn并确定最优的下子位置?rn理论我懂,请教具体操作
javascript黑白棋人机博弈
javascript<em>黑白棋</em><em>人机</em>博弈<em>游戏</em>完整源代码
黑白棋人机大战源代码
<em>黑白棋</em><em>人机</em>大战,很好玩哟. 作者: 轩辕阿建 QQ : 31990839 E-Mail: Zhujnt@163.net
plsql的一个问题,希望高手能帮忙解决一下
declarernv_date date;rnrnbeginrnv_date:=date'2011-6-1';rnrnlooprn execute immediate'rn insert into table1rn select a.aa ,b.bbrn from table2@yy a,table3@yy brn where b.bb=a.dd and a.cc=v_datern and a.ee = ''0''rn ';rn v_date:=v_date+1;rn exit when v_date > date'2011-6-30';rnend loop;rncommit;rnend;rnrnrn报错的地方是 v_date invalid identifier
棋类游戏落子的声音
棋类<em>游戏</em><em>落子</em>的声音
求助,希望帮忙解决一下
是这样的,我用一个FORM1作为MAINFORM,然后,我想在FORM1内点击一BUTTON后,能弹出FORM2(FORM2的作用:FORM2内放置一DBLOOKUPLISTBOX,用来存放记录的帮助信息,点击某一行记录后,FORM2再消失),而且,FORM1不能消失,即FORM2,FORM1同时出现,FORM2叠在FORM1之上。当然,FORM2的形状比FORM1小的多。rn不知,我说得是否清楚,请高手指教.rn谢谢!
火拼黑白棋(黑白棋游戏)
E语言写的<em>黑白棋</em>,要想赢还真得动下脑子。
编写画图软件问题希望帮忙解决
我想要用MFC写一个画图软件,想要像Viso或者Word一样,rn1、可以对图形进行拖动,改变大小。rn2、鼠标点击图形的时候,可以标记为选中状态,并且可以对图形进行多选。rn好了,就先简单的说这些功能吧。rn我找了些资料,有说“橡皮筋”原理的,但是我觉得还是CTrackerRect这个类更贴近我想要。rn但是我发现个<em>问题</em>,网上的例子都是初始化一个图,然后再拖动。那么,如果有多个图又该如何做呢?rn还有GDI不太平滑,CTrackerRect 能用GDI+吗?rn如果还有其他的好方法,给我提供一些资料可以吗? 谢谢各位。
新手问题希望大神能帮忙解决
//我查询出来的例如是 123,234,456,565,3423,datatable怎么拆分为rn123rn234rn456rn565rn3423rn<em>希望</em>可以贴下代码。谢谢rn public static DataTable SelectCompetence1(string framesize)rn rn tryrn rn using (SqlConnection conn = new SqlConnection(DBHelp.conn))rn rn conn.Open();rn string sql = "select F1008_PARADESC from TB1008_PARAMETER where F1008_PARACODE='分段能力' and '" + framesize + "'=F1008_REMARK1";rn using (SqlCommand comm = new SqlCommand(sql, conn))rn rnrn SqlDataAdapter sda = new SqlDataAdapter(comm);rn DataTable dt = new DataTable();rn sda.Fill(dt);rn rn rn return dt;
很简单的问题希望大家帮忙解决一下
建一个dialong之后,添加了如下两个文件rn//3.hrn# ifndef FIRST_Hrn# define FIRST_Hrnrnclass Firstrnrnpublic:rn void w( );rn;rnrn# endifrnrn//3.cpprn# include"3.h"rnrnvoid First::w( )rnrnrn结果编译都没有通过,错误是 fatal error C1010: unexpected end of file while looking for precompiled header directivern<em>帮忙</em><em>解决</em><em>一下</em>,谢谢rnrn
菜鸟问题希望帮忙解决一下
在一个单文档程序中如何改变一个对话框中控件的颜色??rnrn为什么如下的代码执行结果没有效果??rnvoid CColorChangeDialog::OnColorChangeDialogButton() rnrn // TODO: Add your control notification handler code herern CColorDialog cd;rn if(IDOK==cd.DoModal())rn m_background_color=cd.GetColor();rnrn rn rn CWnd *pwnd=GetDlgItem(IDC_COLOR_CHANGE_DIALOG_EDIT2);//IDC_COLOR_CHANGE_DIALOG_EDIT2是一个编辑框IDrn CDC *pcontroldc=pwnd->GetDC();rn pwnd->Invalidate();rn pwnd->UpdateWindow();rn pcontroldc->SetBkColor(m_background_color);rn
简单问题,希望大家帮忙解决一下.
请问:rnrn 我声明两个窗口FORM1,FORM2,在FORM1中声明的变量,在FORM2中怎么可以使用.rn
问题希望谁能帮忙解决一下
protected void Page_Load(object sender, EventArgs e)rn rn string ID;rn int aa;rn ID = Session["ID"].ToString();rn aa = Convert.ToInt16(ID);rn rn protected void btn_Click(object sender, EventArgs e)rn rnrn SqlConnection objConnection = new SqlConnection(strConnect);rn SqlCommand objCommand = new SqlCommand("", objConnection);rn // "UPDATE Company SET CompanyName=@CompanyName,ContactName=@ContactName,ContactTitle=@ContactTitle,Address=@Address,City=@City,Region=@Region,PostalCode=@PostalCode,Country=@Country,Phone=@Phone,Fax=@Fax WHERE USERNAME=@UserName"rn objCommand.CommandText = "update sy set userid=@ID, yysr=@yysr,yycb=@yycb,yysjjfj=@yysjjfj,xsfy=@xsfy,glfy=@glfy,cwfy=@cwfy,zcjzss=@zcjzss where month=@month";rnrn objCommand.Parameters.Add("userid", SqlDbType.Int);rn objCommand.Parameters.Add("yysr", SqlDbType.Float);rn objCommand.Parameters.Add("yycb", SqlDbType.Float);rn objCommand.Parameters.Add("yysjjfj", SqlDbType.Float);rn objCommand.Parameters.Add("xsfy", SqlDbType.Float);rn objCommand.Parameters.Add("glfy", SqlDbType.Float);rn objCommand.Parameters.Add("cwfy", SqlDbType.Float);rn objCommand.Parameters.Add("zcjzss", SqlDbType.Float);rn objCommand.Parameters.Add("month", SqlDbType.VarChar);rnrnrn // Sql语句参数赋值rn objCommand.Parameters["userid"].Value = aa;rn objCommand.Parameters["yysr"].Value = tbx1.Text.Trim();rn objCommand.Parameters["yycb"].Value = tbx2.Text.Trim();rn objCommand.Parameters["yysjjfj"].Value = tbx3.Text.Trim();rn objCommand.Parameters["xsfy"].Value = tbx4.Text.Trim();rn objCommand.Parameters["glfy"].Value = tbx5.Text.Trim();rn objCommand.Parameters["cwfy"].Value = tbx6.Text.Trim();rn objCommand.Parameters["zcjzss"].Value = tbx7.Text.Trim();rn objCommand.Parameters["month"].Value = DropDownList1.Text.Trim();rnrnrnrn运行后错误 1 “aa”是“类型”,但此处被当做“变量”来使用 rn请问如何<em>解决</em>呢?rn
一个很简单的问题希望帮忙解决一下~
书上说:段地址*16+偏移地址=物理地址rn段地址=F000H 偏移地址=FFFFHrn为什么物理地址=FFFF0HrnF000H*16=??rnrn这个是怎么计算的??有人知道吗?
又一道面试题,希望大家帮忙解决
Socket通讯中,无论是同步还是异步方式中,客户端与服务端同时发送或读写数据时,如何在设计时<em>解决</em>这个冲突? J2SE1.4中SOCKET通讯有何新特点?
希望有老大能帮忙解决一个问题
在w_1的cb_1的click事件中往一个表中插入n条数据,然后检索。运行这个程序的时候,如果没有关掉w_1这个窗口,其他人就都不能点开这个窗口,一点程序就死了。<em>希望</em>有老大能<em>帮忙</em><em>解决</em><em>一下</em>
qt 黑白棋
一个<em>qt</em><em>黑白棋</em>的可执行程序,如果要代码可直接联系我
有两个问题希望知道的帮忙解决一下`~
第一个 如何获取IE关闭的信息,我想在IE关闭之前,完成一些操作。rn第二个 如何在IE中自定义鼠标右键。rn顺便问个<em>问题</em>,就是如何在TEXTBOX中输入ctrl+enter自动切换到某个按钮操作,就想QQ发送信息一样??rn刚刚学。NET<em>希望</em>知道的给个话,在此谢谢了呀`~
有两个问题希望那位大虾帮忙解决一下
1,在C#中怎样象VB.net一样建一个公用模块来传递dataset这样的大参数?rn2,在C#中怎么不能识别出“Type myType = GetType(frmMain)”显示错误是,不能识别出Type类型。rn 那位大虾<em>帮忙</em><em>解决</em><em>一下</em>,本人不胜感谢!
有个小小的问题希望大家可以帮忙解决一下
[img=https://img-bbs.csdn.net/upload/201810/05/1538723076_516097.png][/img]rnrn这里红线上的是不是应该改为#define BASE3 (BASE2+(RATE3*(BREAK3-BREAK2)))rnrn
黑白棋游戏
<em>游戏</em>的操作步骤里面有介绍,写的不好,多多见谅。
【求助】黑白棋人机对战模块
如题,谢谢各位大虾了
黑白棋人机作战,人人作战
<em>黑白棋</em>编译,java语言描写,有<em>人机</em>作战,人人作战功能,能够记录比分,还有其他功能
[原创]javascript人机博弈--黑白棋
最近,在研究计算机人工智能中<em>人机</em>博弈的一些<em>算法</em>,用javascript写了个<em>人机</em>对战的 <em>黑白棋</em> <em>游戏</em>。rnrn放上来大家<em>帮忙</em>测试<em>一下</em>,看看棋力强度怎么样,有没有bug,走昏招之类的。rnrn这程序主要在研究搜索<em>算法</em>,包括:alpha-beta<em>算法</em>,迭代加深搜索,历史启发,置换表和MTD(f)<em>算法</em>等。rnrn程序中的估价函数,权重设置的不大理想,可能还需要改进,要是都没<em>问题</em>的话我会放出全部源代码。rnrn[img=https://img-bbs.csdn.net/upload/201507/01/1435744816_838952.png][/img]rnrn在线演示: [url=http://js-game.github.io/othello/]http://js-game.github.io/othello/[/url]
黑白棋人机对战完整代码
<em>黑白棋</em><em>人机</em>对战完整代码
黑白棋人机对战C/C++
自己写的<em>黑白棋</em><em>人机</em>对战,C语言,注释比较清晰,控制台内运行。
那位大虾能帮忙解决一下问题
我在窗口下编译经典的程序“hello world”时,调试也成功。可是没有出现让我输入名字的窗口呀?书上说:“启动一个命令行提示符,在屏幕上输入一个命令:csc welcome.cs”,可是我就没有找到命令行提示符,他在哪里呀?我用的是2003中文版的。rnrnusing System;rnusing System.Drawing;rnusing System.Collections;rnusing System.ComponentModel;rnusing System.Windows.Forms;rnusing System.Data;rnrnnamespace WindowsApplication14rnrn public class Welcomern rn static void Main ( )rn rn Console.WriteLine("Please Enter you name:");rn Console.ReadLine( );rn Console.WriteLine("Welcome to you!!");rn rn rnrn
哪位大虾能帮我解决“五子棋人机对弈算法”的问题
我是刚学BCB不到一个月的菜鸟,最近突然想做一个五子连环棋的<em>游戏</em>。双人对弈rn倒是好办,可到后来又想加一个<em>人机</em>对弈的功能来增加<em>游戏</em>的娱乐性,可想来想去,rn也想不出个好<em>算法</em>,各位前辈,救救我吧!!!!
人机对战可以实现的黑白棋
系统应具有实现人人对局、<em>人机</em>对局和两机对局(可选)功能
基于Ubuntu下的QT制作黑白棋游戏
基于Ubuntu下的QT制作<em>黑白棋</em><em>游戏</em>,仅供参考!欢迎来提意见!
Qt编写贪吃蛇游戏
Qt<em>编写</em>简单贪吃蛇<em>游戏</em>。
Qt编写数独游戏
使用Qt开发框架<em>编写</em>的数独<em>游戏</em>,现实背景可以更换,亲测可用,欢迎下载
QT编写方块游戏
此文档是一款使用QT<em>编写</em>方块<em>游戏</em>,此文中包括完整的代码和图片.方便读者学习
黑白棋游戏代码-C语言编写
C语言<em>编写</em>的<em>黑白棋</em><em>游戏</em>,注释详细,简单明了,可以参考<em>一下</em>
帮忙解决一下这个算法问题
如何取得N个自然数的全排列序列???rn想了好久。。。。
求助,希望高手能帮忙解决
最近要开发一个模块,要实现表格里的内容实现拖动,例如:A单元格的内容直接拖入到B单元格内,同时修改数据库数据。现在我的难点是怎么实现拖动,并触发事件,以前没做过这一块<em>希望</em>大家给点思路,最好能有例子
希望有经验的高手能指点一下
我是java的新手,有c++基础,但当我在图书馆搜索java的书时,却发现了很多不同的书,java2,j2ee,j2se,jsp等等,我都不知道该县学什么后学什么,也不知道他们的区别,<em>希望</em>有学过java的人能指点<em>一下</em>,到底应该怎样学,学些什么。之类的,关于java学习的都说<em>一下</em>吧,不胜感激
希望解决一下系统错误的问题
我的电脑win10系统 出现了照片上的<em>问题</em>,<em>希望</em>那位大神<em>帮忙</em><em>解决</em><em>一下</em>,本人大一lT专业学生,知识不够…谢谢![图片说明](https://img-ask.csdn.net/upload/201511/09/1447062441_141315.png)
springside 希望有大侠能帮我一下
springside3.3.1去掉了bin目录,哪个大侠能都我怎么把springside3.3.1用到自己的项目中去吗。。最好有截图。rn小弟在这谢谢了。。
问个问题希望高手帮忙解决一下
我想在.net里调用FTP,并上传文件。该怎么做
一个小问题希望高手帮忙解决一下
怎么才能在CSDN上快捷地获取到下载积分呢?这上面有好多好资料,但是积分没了,没法下下来用,好急人!热心人<em>帮忙</em><em>解决</em><em>一下</em>,感激,感激……!
用Qt编写的具有人机对战的五子棋
此五子棋代码,实现了<em>人机</em>对战,开始界面可以选择棋子颜色和自动搜索的深度(即难度),搜索的<em>游戏</em>状态数目随着博弈的进行呈指数级增长,指数增长无法消除,不过我们使用了alpha-beta剪枝有效地将其减半,加快了搜索的速度!
几个疑惑,希望大家帮忙解决一下
1。数组和枚举类型的区别,两者相比较谁更好一些rn2。对于这两种泛型,有什么区别,形如这样的:rnrn1>public List execute(Command command)rnreturn (List) ret;rnrnrn2>public map(ResultSet rs) throws SQLExceptionrnreturn listrnrn3。什么叫做单态类,最好举个例子说明<em>一下</em>
请问谁可以给我黑白棋游戏算法??
如提rn分不够可以加,rn用我所有的可用分求(1599)
OpenGL程序出错,希望有大神帮忙解决一下!(有源程序)
学习《OpenGL入门教程(精)》第十一课的时候按照书的程序自己编了<em>一下</em>,出现以下错误:rnrn--------------------Configuration: study017 - Win32 Debug--------------------rnCompiling...rnstudy017.cpprnG:\OpenGL\study017\study017.cpp(182) : error C2664: 'glGetIntegerv' : cannot convert parameter 2 from 'unsigned int *' to 'int *'rn Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style castrn执行 cl.exe 时出错.rnrnstudy017.exe - 1 error(s), 0 warning(s)rnrnrn不知道是为什么,全部程序代码如下:rn#define WindowWidth 400 rn#define WindowHeight 400 rn#define WindowTitle "OpenGL纹理测试" rn rn#include rn#include rn#include rn rn/* 函数grab rn * 抓取窗口中的像素 rn * 假设窗口宽度为WindowWidth,高度为WindowHeight rn */ rn#define BMP_Header_Length 54 rnvoid grab(void) rn rn FILE* pDummyFile; rn FILE* pWritingFile; rn GLubyte* pPixelData; rn GLubyte BMP_Header[BMP_Header_Length]; rn GLint i, j; rn GLint PixelDataLength; rn rn // 计算像素数据的实际长度 rn i = WindowWidth * 3; // 得到每一行的像素数据长度 rn while( i%4 != 0 ) // 补充数据,直到i是的倍数 rn ++i; // 本来还有更快的<em>算法</em>, rn // 但这里仅追求直观,对速度没有太高要求 rn PixelDataLength = i * WindowHeight; rn rn // 分配内存和打开文件 rn pPixelData = (GLubyte*)malloc(PixelDataLength); rn if( pPixelData == 0 ) rn exit(0); rn rn pDummyFile = fopen("dummy.bmp", "rb"); rn if( pDummyFile == 0 ) rn exit(0); rn rn pWritingFile = fopen("grab.bmp", "wb"); rn if( pWritingFile == 0 ) rn exit(0); rn rn // 读取像素 rn glPixelStorei(GL_UNPACK_ALIGNMENT, 4); rn glReadPixels(0, 0, WindowWidth, WindowHeight, rn GL_BGR_EXT, GL_UNSIGNED_BYTE, pPixelData); rn rn // 把dummy.bmp的文件头复制为新文件的文件头 rn fread(BMP_Header, sizeof(BMP_Header), 1, pDummyFile); rn fwrite(BMP_Header, sizeof(BMP_Header), 1, pWritingFile); rn fseek(pWritingFile, 0x0012, SEEK_SET); rn i = WindowWidth; rn j = WindowHeight; rn fwrite(&i, sizeof(i), 1, pWritingFile); rn fwrite(&j, sizeof(j), 1, pWritingFile); rn rn // 写入像素数据 rn fseek(pWritingFile, 0, SEEK_END); rn fwrite(pPixelData, PixelDataLength, 1, pWritingFile); rn rn // 释放内存和关闭文件 rn fclose(pDummyFile); rn fclose(pWritingFile); rn free(pPixelData); rnrnrn/* 函数power_of_two rn * 检查一个整数是否为2的整数次方,如果是,返回1,否则返回0 rn * 实际上只要查看其二进制位中有多少个,如果正好有1个,返回1,否则返回0 rn * 在“查看其二进制位中有多少个”时使用了一个小技巧 rn * 使用n &= (n-1)可以使得n中的减少一个(具体原理大家可以自己思考) rn */ rnint power_of_two(int n) rn rn if( n max rn || height > max ) rn rn const GLint new_width = 256; rn const GLint new_height = 256; // 规定缩放后新的大小为边长的正方形 rn GLint new_line_bytes, new_total_bytes; rn GLubyte* new_pixels = 0; rn rn // 计算每行需要的字节数和总字节数 rn new_line_bytes = new_width * 3; rn while( new_line_bytes % 4 != 0 ) rn ++new_line_bytes; rn new_total_bytes = new_line_bytes * new_height; rn rn // 分配内存 rn new_pixels = (GLubyte*)malloc(new_total_bytes); rn if( new_pixels == 0 ) rn rn free(pixels); rn fclose(pFile); rn return 0; rn rn rn // 进行像素缩放 rn gluScaleImage(GL_RGB, rn width, height, GL_UNSIGNED_BYTE, pixels, rn new_width, new_height, GL_UNSIGNED_BYTE, new_pixels); rn rn // 释放原来的像素数据,把pixels指向新的像素数据,并重新设置width和height rn free(pixels); rn pixels = new_pixels; rn width = new_width; rn height = new_height; rn rn rn rn // 分配一个新的纹理编号 rn glGenTextures(1, &texture_ID); rn if( texture_ID == 0 ) rn rn free(pixels); rn fclose(pFile); rn return 0; rn rn rn // 绑定新的纹理,载入纹理并设置纹理参数 rn // 在绑定前,先获得原来绑定的纹理编号,以便在最后进行恢复 rn glGetIntegerv(GL_TEXTURE_BINDING_2D, &last_texture_ID); rn glBindTexture(GL_TEXTURE_2D, texture_ID); rn glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); rn glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); rn glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); rn glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); rn glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); rn glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, rn GL_BGR_EXT, GL_UNSIGNED_BYTE, pixels); rn glBindTexture(GL_TEXTURE_2D, last_texture_ID); rn rn // 之前为pixels分配的内存可在使用glTexImage2D以后释放 rn // 因为此时像素数据已经被OpenGL另行保存了一份(可能被保存到专门的图形硬件中) rn free(pixels); rn return texture_ID; rnrnrn/* 两个纹理对象的编号 rn */ rnGLuint texGround; rnGLuint texWall; rn rnvoid display(void) rn rn // 清除屏幕 rn glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); rn rn // 设置视角 rn glMatrixMode(GL_PROJECTION); rn glLoadIdentity(); rn gluPerspective(75, 1, 1, 21); rn glMatrixMode(GL_MODELVIEW); rn glLoadIdentity(); rn gluLookAt(1, 5, 5, 0, 0, 0, 0, 0, 1); rn rn // 使用“地”纹理绘制土地 rn glBindTexture(GL_TEXTURE_2D, texGround); rn glBegin(GL_QUADS); rn glTexCoord2f(0.0f, 0.0f); glVertex3f(-8.0f, -8.0f, 0.0f); rn glTexCoord2f(0.0f, 5.0f); glVertex3f(-8.0f, 8.0f, 0.0f); rn glTexCoord2f(5.0f, 5.0f); glVertex3f(8.0f, 8.0f, 0.0f); rn glTexCoord2f(5.0f, 0.0f); glVertex3f(8.0f, -8.0f, 0.0f); rn glEnd(); rn // 使用“墙”纹理绘制栅栏 rn glBindTexture(GL_TEXTURE_2D, texWall); rn glBegin(GL_QUADS); rn glTexCoord2f(0.0f, 0.0f); glVertex3f(-6.0f, -3.0f, 0.0f); rn glTexCoord2f(0.0f, 1.0f); glVertex3f(-6.0f, -3.0f, 1.5f); rn glTexCoord2f(5.0f, 1.0f); glVertex3f(6.0f, -3.0f, 1.5f); rn glTexCoord2f(5.0f, 0.0f); glVertex3f(6.0f, -3.0f, 0.0f); rn glEnd(); rn rn // 旋转后再绘制一个 rn glRotatef(-90, 0, 0, 1); rn glBegin(GL_QUADS); rn glTexCoord2f(0.0f, 0.0f); glVertex3f(-6.0f, -3.0f, 0.0f); rn glTexCoord2f(0.0f, 1.0f); glVertex3f(-6.0f, -3.0f, 1.5f); rn glTexCoord2f(5.0f, 1.0f); glVertex3f(6.0f, -3.0f, 1.5f); rn glTexCoord2f(5.0f, 0.0f); glVertex3f(6.0f, -3.0f, 0.0f); rn glEnd(); rn rn // 交换缓冲区,并保存像素数据到文件 rn glutSwapBuffers(); rn grab(); rn rn rnint main(int argc, char* argv[]) rn rn // GLUT初始化 rn glutInit(&argc, argv); rn glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA); rn glutInitWindowPosition(100, 100); rn glutInitWindowSize(WindowWidth, WindowHeight); rn glutCreateWindow(WindowTitle); rn glutDisplayFunc(&display); rn rn // 在这里做一些初始化 rn glEnable(GL_DEPTH_TEST); rn glEnable(GL_TEXTURE_2D); rn texGround = load_texture(" ground.bmp"); rn texWall = load_texture("wall.bmp"); rn rn // 开始显示 rn glutMainLoop(); rn rn return 0; rnrnrn
用java语言编写人机互动猜拳游戏
如果有兴趣的就下载看看吧,对初学者很有帮助哦。
帮忙解决一下问题
[img=https://img-bbs.csdn.net/upload/201305/04/1367679927_810616.png][/img][img=https://img-bbs.csdn.net/upload/201305/04/1367679944_550639.png][/img][img=https://img-bbs.csdn.net/upload/201305/04/1367679956_472860.png][/img]rn根据上边吧两个图的信息,填写下边的内容
用Java编写人机互动版游戏
用Java<em>编写</em>的<em>人机</em>互动版<em>游戏</em> 欢迎下载!
帮忙解决一下问题
只能实现正常功能下的吧。如果同时出现二个空格就有<em>问题</em>了。rn这个成功了,但是什么也出不来,一步步代进去了,感觉也没什么<em>问题</em>那。rn结果什么都没有显示rn/* HELLO.C -- Hello, world */rnrn#include "stdio.h"rn#include "conio.h"rnvoid large(char str[]);rnmain()rnrnchar str[100];rn gets(str);rn large(str);rn getch();rnrnvoid large(char str[])rnrnint i=0,j=0,sum=0,max=0,b=0;rndornrnfor(i=j;str[i]!=32||str[i]!='\0';i++)/*通过I=J来取第一个空格后,后面的值*/rn rnrn b=b+1; /*在输入的时候输英文 */rn rn if(sum
帮忙 解决一下问题
为什么用ie 打开 http;//www.7ecity.com 没<em>问题</em>,但是用tt 或firefox 打开就变乱了?(一部分页面)?rn谢谢
希望有人能帮忙?????
请问哪位网管大哥用过“网猫(NETCAT) NC56-PCI-I”的MODEM,芯片是MOTOROLA的那种,在哪里能找到其FOR WIN2000的驱动程序。谢谢啦,,,!!
希望有人能帮忙!!!
为什么我写的MIDP程序(用ECLIPSE3.0.1+ECLIPSEME0.6.0)写出来以后显示说连接不到虚拟机???rn或者是一闪而过,为什么会这样???
交的作业,有很大问题,大家帮忙一下
/* Note:Your choice is C IDE */rn#include "stdio.h"rn#include "ctype.h"rnrnvoid menu(void);rnint getfirst(void);rnvoid main()rnrn double a1,a2;rn double jieguo=0;rn char shuru;rn rn menu();rn while((shuru=getfirst())!='q') //只取输入的第一个字母rn rn while(shuru!='a'&&shuru!='s'&&shuru!='m'&&shuru!='d')//输入错误的情况rn rn printf(" 输入有误,请重新输入");break;rn rn printf("enter first number:");rn while(scanf("%lf\n",&a1)!=1&&a1!='\n');rn printf("%d is'not an number.\nplease enter a number, such as 2.5.-1.78e8.or 3:1",a2);rn rn printf("enter second number:");rn while(scanf("%lf\n",&a2)!=1&&a2!='\n');rn printf("%d is'not an number.\nplease enter a number, such as 2.5.-1.78e8.or 3:1",a2);rn //输入错误时的提示rn switch(shuru) //四种情况rn rn case 'a' : jieguo=a1+a2;printf("a1+a2=%lf",jieguo);break;rn case 's' : jieguo=a1-a2;printf("a1-a2=%lf",jieguo);break;rn case 'm' : jieguo=a1/a2;printf("a1/a2=%lf",jieguo);break;rn case 'd' : jieguo=a1*a2;printf("a1*a2=%lf",jieguo);break; rn default : printf("that,s wrong");rn rn menu();rn rnrnrnvoid menu (void) //声明菜单函数rnrn printf("*************************************\n");rn printf("enter the operation of your choice\n:");rn printf("a. add s.subtract\n");rn printf("m. multiply d.divide\n");rn printf("q.quit\n");rn printf("****************************************\n");rn rnint getfirst(void) //当输入为ABC时,只取Arnrnint ch;rnch=getchar();rnwhile(isspace(ch))rnch=getchar();rnwhile(getchar()!='\n')rncontinue;rnreturn ch;rn
有个棘手的问题帮忙解决一下
我用的是access库,该库中的表数据是只供用户预览的,现在我要开放一个表的编辑功能,为了以后发布的软件的数据库不会覆盖这个表,我选择将这个表单独列出来,我想问<em>一下</em>这个表的存放格式选用哪一种最好,同时说明<em>一下</em>好处及简单说明<em>一下</em>做法,能谈谈该表格式的更新策略最好
人对人黑白棋c++源代码
简单的<em>黑白棋</em>源代码,c++<em>编写</em>,不实现AI,仅仅是人对人的
希望好心人帮忙一下
我是初学者,这个题目我们老师布置的作业,谢了一点点,发现不会写了,<em>希望</em>能够<em>帮忙</em><em>一下</em>,谢谢。rnrn定义泛型接口Function , <em>其中</em>包含方法TResult fun(T element),该方法语义上根据一个T类型的参数得到一个TResult的结果。请定义一个CollectionUtil类,该类主要对集合进行操作,所有的方法都是静态方法。请思考并以下<em>问题</em>:rn1) 我们需要一个CollectionUtil对象吗?该类是否应该是抽象类?rn2) 定义方法rnPublic static Collection convert(rnCollection data,rnFunction converter) rn注意: Collection是java集合的父接口对象,该方法的作用是针对集合data中的每一个元素,我们运用一个转换规则对象converter得到另外一个对象。例如:对于一个浮点数集合source为2.3,4.2,5.6,-2.4,对该集合中的每一个元素进行四舍五入操作,可以得到一个整数的集合2,4,6,-2,为了完成上述转换,我们可以定义转换类rnpublic class ToIntFun implements Function rn public Integer fun(Double x) rn return x四舍五入的结果;rn rnrn然后我们调用CollectionUtil. Convert(source,new ToIntFun()),该方法的调用结果就是我们想要的四舍五入的结果集合。rn请你完成方法convert和ToIntFun. Fun,并且<em>编写</em>一个主程序来测试。测试分为两个层次:a.测试单个元素的转换是否正确 b.测试集合的转换是否正确rn3) 定义接口Command,该接口包含方法void execute(T element),上述方法的作用是对一个T类型的参数element,做某个事情,最简单的是输出该元素的值。然后为CollectionUtil类定义静态方法 void foreach(Collection data, Command cmd)。该方法的作用是针对集合data中的每个元素,执行某个操作。请你定义一个类Class PositionSum实现接口Command,并且在execute方法中完成将一个整数的所有位数和输出的功能。然后完成方法CollectionUtil.foreach并且在主程序中测试PositionSum和CollectionUtil.foreach。
Qt黑白棋项目源码
功能:人人对战,<em>人机</em>对战,背景更换,背景音乐,跳棋,悔棋,托管,重新开局,<em>黑白棋</em>数目记录,判断胜负,时间记录,播放视频等功能(注意:20秒后会自动跳棋)。
图片版QT黑白棋
用QT实现的小<em>游戏</em>,包含完整的源代码,图片资源,适合学习C++的同学上手娱乐娱乐
QT版黑白棋
在 凌阳培训做的。
基于QT下的黑白棋项目源码
基于QT下的<em>黑白棋</em>项目源码,简单容易上手。实现的功能更多
基于QT的黑白棋项目
人人对战<em>人机</em>对战,悔棋跳过重来暂停,带有音乐播放,一键换肤。
Qt 黑白棋demo
基本功能:1、下棋;2、计数;3、提示该谁下棋;4、跳过;5、棋子、背景图片;6、胜负判断;7、重新开始; 扩展功能:8、音效;9、背景音乐;10、<em>人机</em>对战;11、联网;13、难度设置;14、历史记录;15、窗口菜单;16、<em>游戏</em>大厅;17、计时;;18、双方起名;19、重新开始;20、<em>游戏</em>说明;21、开场动画;22、悔棋;23、<em>游戏</em>存盘;
qt黑白棋源码(简单)
<em>qt</em> <em>黑白棋</em> 源码;这个是我实习的时候写的小<em>游戏</em>,智能<em>算法</em>写的不好,因为我也不是<em>黑白棋</em>的高手。分享给大家,见笑了。。。
qt游戏黑白棋源码
图像均为网上下载,如有侵权,请及时联系本人进行删除。
QT黑白棋源程序
QT环境下<em>黑白棋</em>开发,程序部分来自传智播客资源分享,源程序包括<em>游戏</em>规则,<em>游戏</em>逻辑界面设置布局等。
C语言方面的问题希望有心人能帮忙一下
用选择发对数组中10个整数按由小到大排列。所谓选择法就是现将10个数中最小的书与a[0]对换;再将【10】到【9】中最小的书与【1】对换。每比较一轮,找出一个未经排列的数中最小的一个。共比较9轮。rn根据此思路<em>编写</em>的程序如下:rnrn#includernvoid sort(int array[],int n)rnrn int i,j,k,t;rn [color=#FF0000][/color]for(i=0;i>a[i];rn sort(a,10);rn cout<<
问大家一个问题希望懂的 能帮忙回答一下
[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/16.gif][/img]groupWrapperList是个表的集合,从数据库读取过来的 rn现在想将每一条数据遍历,转换成datarow插入到datatable里面。不知道有什么办法。下面的方法不对,我自己写的。不知道咋实现。rnrnrnDataTable t = new DataTable();rnDataColumn col = new DataColumn();rnrnforeach(GroupWrapper g in groupWrapperList)rnrnMessageBox.Show(g.ToString());rnDataRow r = t.NewRow();rnr.ItemArray = (ItemArray);rnt.Rows.Add(r);
实现五子棋人机AI算法结合游戏
五子棋两种方式实现效界面美观,利用AI智能<em>算法</em>实现五子棋<em>人机</em>输赢,含有撤棋等功能
数字信号处理实验C++程序(DFT/IDFT/FFT/IFFT/普通卷积、快速卷积)下载
数字信号处理实验、C++程序、DFT、IDFT、FFT、IFFT、普通卷积、快速卷积 相关下载链接:[url=//download.csdn.net/download/tllovejf1/2350476?utm_source=bbsseo]//download.csdn.net/download/tllovejf1/2350476?utm_source=bbsseo[/url]
openldap安装流程下载
openldap在linux的安装步骤与流程 相关下载链接:[url=//download.csdn.net/download/spike0442/3756453?utm_source=bbsseo]//download.csdn.net/download/spike0442/3756453?utm_source=bbsseo[/url]
jquery很全的例子源码,事件 ajax,表单应用下载
jquery很全的例子源码,事件 ajax,表单应用 相关下载链接:[url=//download.csdn.net/download/wdxtlhh2011/4245935?utm_source=bbsseo]//download.csdn.net/download/wdxtlhh2011/4245935?utm_source=bbsseo[/url]
相关热词 c# 去空格去转义符 c#用户登录窗体代码 c# 流 c# linux 可视化 c# mvc 返回图片 c# 像素空间 c# 日期 最后一天 c#字典序排序 c# 截屏取色 c#中的哪些属于托管机制
我们是很有底线的