纸牌游戏在线 任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,

您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
IJAVA课程设计纸牌游戏.doc 16页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:60 &&
IJAVA课程设计纸牌游戏
你可能关注的文档:
··········
··········
一、问题分析和任务定义
编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;。。。再依次5的倍数的牌翻一次,6的,7的直到 以52为基数的 翻过,输出:这时正面向上的牌有哪些? (1)按照要求翻转纸牌。
(2)输出最后正面向上的纸牌的编号。
3.原始数据的输入及输出格式:
原始数据要求输入纸牌的基础编号,编号的输入为整型。输出的是经过规律翻转后正面向上的纸牌的编号。
输入的数据信息如下: 纸牌:1、2、3……、51、52。
问题直观分析表:
1 2 3 4 5 6 7 8 9 10 11 12 ……
(注:图中“√”表示翻转一次。)
二.数据结构的选择和概要设计
1.数据结构
按照题目要求,整个主体包括一个嵌套的循环,外循环控制从2开始每张纸牌都作为基数进行翻牌,内循环控制对所有纸牌进行判断,如果是当前循环中基数的倍数,则对其进行翻转操作。具体代码如下:
for(i=2;i&=52;i++)
for(j=1;j&=52;j++)
if(j%i==0)
data[j-1]=data[j-1]*F
2.概要设计
按照题目的要求,首先,应对52张牌进行编号并且保存它们的编号信息,编号的类型为整型,而对于这样固定的数据,使用整型数组是最好的,因此,我们需要在程序的开始定义一共整型的数组,同时,为了方便对翻转过程的记录,在定义记录编号信息的同时,定义一个与之相对应的标记数组,数组类型为整型。该程序的核心为一个嵌套的循环,所以定义两个变量i,j作为循环条件。
接着开始对变量进行初始化,首先是编号信息数组,使用for循环对数组进行1到52的赋值,代表52张纸牌,然后对标记数组赋值,将数组内的所有的值初始化为零,方便在接下来的循环中统计每张牌的翻牌数。数据初始化结束后,开始按照要求对纸牌进行翻转,在嵌套循环中,定义了一个全局变量Flag,值为-1,负数定义为向下,正数定义为向上,这样,翻转一次,即乘以Flag,同时,符合翻转条件时,标记数组相应的编号的纸牌翻牌次数+1。
循环结束后,编号数组中的数据已经更新,因此对数组进行扫描,大于零的即为正面向上的纸牌,输出其编号即可,同时,输出标记数组中的值,显示每张牌的翻牌记录,方便观察或者寻找规律。到此,整个题目结束。
三.详细设计和编码
1.定义全局变量:
作为判断纸牌是否向上的依据,我们需要定义一个全局变量Flag=-1,在循环中对所有纸牌进行操作。
2.主要程序代码与分析如下:
static int Flag = -1(考虑到最后要判断哪些纸牌是正面向上的,所以必须要有一共判断条件,因此定义一个全局变量作为正反面的判断条件。)
public static void main(String[] args) {
int i,j,choice,//建立两个数组,一个存放52张牌的编号,另外一个存放相应编号的纸牌的翻牌记录。
int[] data = new int[52];
int[] flag = new int[52];
String n,m;
System.out.println(&温馨提示:欢迎进入纸牌游戏程序!&);
for(i=1;i&=52;i++)
data[i-1]=i;//录入52张牌的编号。
flag[i-1]=0;//将相应编号纸牌的翻牌数初始化为0。
for(i=2;i&=52;i++)//外循环,基数循环。
for(j=1;j&=52;j++)//内循环,基数倍数条件判断。
if(j%i==0)
data[j-1]=data[j-1]*F//将翻转后的结果更新data中的数据。
flag[j-1]++;//翻牌一次,即记入flag数组中
正在加载中,请稍后...&>&&>&开发技术&>&其它&>&数据结构纸牌游戏之编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始
数据结构纸牌游戏之编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始
上传大小:16KB
任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向上的牌有哪些?
综合评分:3.9(18位用户评分)
所需积分:
下载个数:113
{%username%}回复{%com_username%}{%time%}\
/*点击出现回复框*/
$(".respond_btn").on("click", function (e) {
$(this).parents(".rightLi").children(".respond_box").show();
e.stopPropagation();
$(".cancel_res").on("click", function (e) {
$(this).parents(".res_b").siblings(".res_area").val("");
$(this).parents(".respond_box").hide();
e.stopPropagation();
/*删除评论*/
$(".del_comment_c").on("click", function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_invalid/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parents(".conLi").remove();
alert(data.msg);
$(".res_btn").click(function (e) {
var q = $("#form1").serializeArray();
console.log(q);
var res_area_r = $.trim($(".res_area_r").val());
if (res_area_r == '') {
$(".res_text").css({color: "red"});
$.post("/index.php/comment/do_comment_reply/", q,
function (data) {
if (data.succ == 1) {
var $target,
evt = e || window.
$target = $(evt.target || evt.srcElement);
var $dd = $target.parents('dd');
var $wrapReply = $dd.find('.respond_box');
console.log($wrapReply);
var mess = $(".res_area_r").val();
var str = str.replace(/{%header%}/g, data.header)
.replace(/{%href%}/g, 'http://' + window.location.host + '/user/' + data.username)
.replace(/{%username%}/g, data.username)
.replace(/{%com_username%}/g, _username)
.replace(/{%time%}/g, data.time)
.replace(/{%id%}/g, data.id)
.replace(/{%mess%}/g, mess);
$dd.after(str);
$(".respond_box").hide();
$(".res_area_r").val("");
$(".res_area").val("");
$wrapReply.hide();
alert(data.msg);
}, "json");
/*删除回复*/
$(".rightLi").on("click",'.del_comment_r', function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_comment_del/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parent().parent().parent().parent().parent().remove();
$(e.target).parents('.res_list').remove()
alert(data.msg);
//填充回复
function KeyP(v) {
$(".res_area_r").val($.trim($(".res_area").val()));
评论共有1条
资源还不错,不过我对算法没怎么弄清楚
审核通过送C币
MATLAb Robotic Toolbox 合集
创建者:kroc_kroc
Genero Studio 2.40.11
创建者:herozzr
创建者:qq_
上传者其他资源上传者专辑
开发技术热门标签
VIP会员动态
前端开发重难点
17年软考最新真题及解析
物联网全栈开发专题
二十大技术领域优质资源
spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip
CSDN&VIP年卡&4000万程序员的必选
数据结构纸牌游戏之编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始
会员到期时间:剩余下载个数:
请勿使用迅雷下载
积分不足!
资源所需积分
当前拥有积分
您可以选择
程序员的必选
绿色安全资源
资源所需积分
当前拥有积分
VIP年卡全年1200个资源免积分下载
请勿使用迅雷下载
你当前的下载分为234。
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可奖励20下载分
被举报人:
fengzizhipai
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:扫二维码下载作业帮
2亿+学生的选择
下载作业帮安装包
扫二维码下载作业帮
2亿+学生的选择
使用C++循环链表写纸牌游戏纸牌游戏
任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向上的牌有哪些?
扫二维码下载作业帮
2亿+学生的选择
可以了#pragma warning(disable:4786)#include &iostream&#include &string&#include &ctime&#include &vector&#define Random4 (rand() % 4)#define RandomN (rand() % 13)const string varity[4] = ;const string Num[13] = {"A", "2", "3", "4", "5", "6", "7", "8", "9","10", "J", "Q", "K"};class Games{private: int P vector&string& P vector&vector&int& & each_ int *S string *N
public: Games() {
srand((unsigned)time(NULL));
cout && "多少人参加游戏?(1~7):";
Poke.resize(Players+1);
Sum = new int[Players+1];
Name = new string[Players+1];
Name[0] = "庄家";
for(i = 0; i &= P i++)
Sum[i] = 0;
for(i = 1; i &= P i++)
cout && "输入第" && i &&"位玩家的姓名: ";
cin && Name[i];
~Games() {
delete []S
delete []N }
void InitFirst() {
vector&int& row_
for(i = 0; i &= P i++)
row_num.erase(row_num.begin(), row_num.end());
fir = RandomN+1;
sec = RandomN+1;
row_num.push_back(fir);
row_num.push_back(sec);
each_num.push_back(row_num);
string Col = varity[Random4];
Poke[i].append(Col);
cout && Name[i] && ": ";
i == 0 ? (cout && "&隐藏&") : (cout && Col && Num[fir-1]);
Poke[i].append(Num[fir-1]);
Col = varity[Random4];
Poke[i].append(Col);
Poke[i].append(Num[sec-1]);
cout && "," && Col && Num[sec-1];
if(fir & 10 || sec & 10)
if(fir & 10)
Sum[i] += fir+
if(i != 0)
cout && " 总分值: " && Sum[i];
void AddPoint() {
for(i = 1; i &= P i++)
cin.sync();
cin.clear();
for(vector&int&::iterator it = each_num[i].begin(); it != each_num[i].end(); it++)
if(*it == 1)
cout && Name[i] && ",你牌中的A是否要作为11(y,n)?";
if(sel == 'y' || sel == 'Y')
Sum[i] += 10;
cout && Name[i] && ": " && Poke[i] && "总分值: " && Sum[i] &&
cout && Name[i] && ",你想再要一张牌吗(y,n)?";
if(sel == 'n' || sel == 'N')
int add = RandomN+1;
string Col = varity[Random4];
Poke[i].append(Col);
Poke[i].append(Num[add-1]);
if(add & 10)
each_num[i].push_back(add);
cout && Name[i] && ": " && Poke[i] && "总分值: " && Sum[i] &&
if(Sum[i] & 21)
cout && Name[i] && "引爆!" &&
void Resault() {
for(vector&int&::iterator it
= each_num[0].begin(); it != each_num[0].end(); it++)
if(*it == 1)
if(Sum[0]+10 & 21)
Sum[0] += 10;
while(Sum[0] &= 16)
int add = RandomN+1;
string Col = varity[Random4];
Poke[0].append(Col);
Poke[0].append(Num[add-1]);
if(add & 10)
cout && Name[0] && ": " && Poke[0] && "总分值: " && Sum[0] &&
if(Sum[0] & 21)
cout && "庄家引爆!" &&
for(i = 1; i &= P i++)
if(Sum[i] & 21)
cout && Name[i] && ": 唉,你打平局!" &&
cout && Name[i] && ": 你赢了!" &&
for(i = 1; i &= P i++)
if(Sum[i] & 21 || Sum[i] & Sum[0])
cout && Name[i] && ": 对不起,你输了!" &&
else if(Sum[i] & Sum[0])
cout && Name[i] && ": 你赢了!" &&
cout && Name[i] && ": 唉,你打平局!" &&
} }};int main(){ G one.InitFirst(); one.AddPoint(); one.Resault(); return 0;}
为您推荐:
扫描下载二维码>> 纸牌游戏。任务:编号为1
纸牌游戏。任务:编号为1
所属分类:
下载地址:
PlayingCards.rar文件大小:83.80 kB
分享有礼! 》
请点击右侧的分享按钮,把本代码分享到各社交媒体。
通过您的分享链接访问Codeforge,每来2个新的IP,您将获得0.1 积分的奖励。
通过您的分享链接,每成功注册一个用户,该用户在Codeforge上所获得的每1个积分,您都将获得0.2 积分的分成奖励。
纸牌游戏。任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;直到以52为基数的翻过,输出:这时输出正面向上的牌有哪些?-Card games. Missions: No. 1-52 cards, face up, to start from the first two to 2 as the base, is a multiple of 2 cards over once, until the last card Then, from the first three to start, to 3 for base, is a multiple of 3 cards over once, until the last card up to 52 as the base of the turn, the output: when the output of the sign face up what?
Sponsored links
源码文件列表
温馨提示: 点击源码文件名可预览文件内容哦 ^_^
PlayingCards.doc137.50 kB07-07-06 09:12
(提交有效评论获得积分)
评论内容不能少于15个字,不要超出160个字。
评价成功,多谢!
下载PlayingCards.rar
CodeForge积分(原CF币)全新升级,功能更强大,使用更便捷,不仅可以用来下载海量源代码马上还可兑换精美小礼品了
您的积分不足,优惠套餐快速获取 30 积分
10积分 / ¥100
30积分 / ¥200原价 ¥300 元
100积分 / ¥500原价 ¥1000 元
订单支付完成后,积分将自动加入到您的账号。以下是优惠期的人民币价格,优惠期过后将恢复美元价格。
支付宝支付宝付款
微信钱包微信付款
更多付款方式:、
您本次下载所消耗的积分将转交上传作者。
同一源码,30天内重复下载,只扣除一次积分。
鲁ICP备号-3 runtime:Elapsed:117.165ms - init:0.1;find:0.6;t:0.4;tags:0.2;related:19.3;comment:0.2; 27.69
登录 CodeForge
还没有CodeForge账号?
Switch to the English version?
^_^"呃 ...
Sorry!这位大神很神秘,未开通博客呢,请浏览一下其他的吧}

我要回帖

更多关于 空当接龙纸牌游戏 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信