第六章第三十题(游戏:双骰子赌博)(Game: craps)
**6.30(游戏:双骰子赌博)执双骰子游戏是赌场中非常流行的骰子游戏。编写程序,玩这个游戏的一个变种,如下所描述: 执两个骰子。每个骰子有六个面,分别表示值1,2,…,6。检查这两个骰子的和。如果和为2、3或12(称为掷骰子(crap)),你就输了;如果和是7或者11(称作自然(natural)),你就赢了;但如果和是其他数字(例如:4、5、6、8、9或者10),就确定了一个点。继续掷骰子,直到掷出一个7或者掷出和刚才相同的点数。如果掷出的是7,你就输了。如果掷出的点数和你前一次掷出的点数相同,你就赢了。程序扮演一个独立的玩家。
下面是一些运行示例:
You rolled 5 + 6 = 11
You win
You rolled 1 + 2 = 3
You lose
You rolled 4 + 4 = 8
point is 8
You rolled 6 + 2 = 8
You win
You rolled 3 + 2 = 5
point is 5
You rolled 2 + 5 = 7
You lose
**6.30(Game: craps)Craps is a popular dice game played in casinos. Write a program to play a variation of the game, as follows:Roll two dice. Each die has six faces representing values 1, 2, . . ., and 6, respectively. Check the sum of the two dice. If the sum is 2, 3, or 12 (called craps), you lose; if the sum is 7 or 11 (called natural), you win; if the sum is another value (i.e., 4, 5, 6, 8, 9, or 10), a point is established. Continue to roll the dice until either a 7 or the same point value is rolled. If 7 is rolled, you lose. Otherwise, you win. Your program acts as a single player.
Here are some sample runs.
You rolled 5 + 6 = 11
You win
You rolled 1 + 2 = 3
You lose
You rolled 4 + 4 = 8
point is 8
You rolled 6 + 2 = 8
You win
You rolled 3 + 2 = 5
point is 5
You rolled 2 + 5 = 7
You lose
下面是参考答案代码:
public class CrapsQuestion30 {public static void main(String[] args) {int sumOfTwoDice,firstDie,secondDie,point;firstDie = rollDie();secondDie = rollDie();sumOfTwoDice = firstDie + secondDie;if(sumOfTwoDice == 2 || sumOfTwoDice == 3 || sumOfTwoDice == 12){System.out.printf("You rolled %d + %d = %d\n",firstDie,secondDie,sumOfTwoDice);System.out.println("You lose");}else if(sumOfTwoDice == 7 || sumOfTwoDice == 11){System.out.printf("You rolled %d + %d = %d\n",firstDie,secondDie,sumOfTwoDice);System.out.println("You win");}else{point = sumOfTwoDice;System.out.printf("You rolled %d + %d = %d\n",firstDie,secondDie,sumOfTwoDice);System.out.printf("point is %d\n", point);do {firstDie = rollDie();secondDie = rollDie();sumOfTwoDice = firstDie + secondDie;}while(sumOfTwoDice !=7 && sumOfTwoDice != point);System.out.printf("You rolled %d + %d = %d\n",firstDie,secondDie,sumOfTwoDice);if(sumOfTwoDice == point)System.out.println("You win");else if(sumOfTwoDice == 7)System.out.println("You lose");}}public static int rollDie() {return (int)(Math.random() * 6 + 1);}
}
运行效果:
注:编写程序要养成良好习惯
1.文件名要用英文,具体一点
2.注释要英文
3.变量命名要具体,不要抽象(如:a,b,c等等),形式要驼峰化
4.整体书写风格要统一(不要这里是驼峰,那里是下划线,这里的逻辑段落空三行,那里相同的逻辑段落空5行等等)
5.普通变量,方法名要小驼峰,类名要大驼峰,常量要使用全部大写加上下划线命名法
6.要学习相应的代码编辑器的一些常用快捷键,如:快速对齐等等
第六章第三十题(游戏:双骰子赌博)(Game: craps)相关推荐
- 第三章第三十题(当前时间)(Current time)
第三章第三十题(当前时间)(Current time) *3.30(当前时间)修改编程练习题2.8,以12小时时钟制显示小时数. 下面是一个运行示例: Enter the time zone offs ...
- 求正多边形的面积JAVA_第六章第三十六题(几何:正多边形的面积)(Geometry: area of a regular polygon)...
*6.36(几何:正多边形的面积)正多边形是一个n条边的多边形,它的每条边的长度都相等,而且所有角的角度也相等(即多边形既是等边又等角的).计算正多边形面积的公式是: 使用下面的方法头编写方法,返回正 ...
- 第六章第三十四题(打印日历)(Print calendar) - 编程练习题答案
**6.34(打印日历)编程练习题3.21使用Zeller一致性原理来计算某天是星期几.使用Zeller的算法简化程序清单6-12以获得每月开始的第一天是星期几. **6.34(Print calen ...
- 第七章第三十六题(游戏:八皇后问题)(Game: Eight Queens)
第七章第三十六题(游戏:八皇后问题)(Game: Eight Queens) ***7.36(游戏:八皇后问题)经典的八皇后难题是要将八个皇后放在棋盘上,任何两个皇后都不能互相攻击(即没有两个皇后是在 ...
- 第五章第三十五题(加法)(Summation)
第五章第三十五题(加法)(Summation) *5.35(加法)编写程序,计算下面的和. *5.35(Summation) Write a program to compute the follow ...
- 第五章第三十八题(十进制转换八进制)(Decimal to octal)
第五章第三十八题(十进制转换八进制)(Decimal to octal) **5.38(十进制转换为八进制)编写程序,提示用户输入一个十进制整数,然后显示对应的八进制值.在这个程序中不要使用Java的 ...
- 九月十月百度,迅雷,华为,阿里巴巴最新校招笔试面试三十题(10.18)
九月十月百度,迅雷,华为,阿里巴巴,最新校招笔试面试三十题 题记 本博客自2010年10月11日开通以来,已经帮助了一大批人找到工作,特别是连续三年在每一年的9.10月份陪伴了至少三届毕业生找工作的旅 ...
- 最新九月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试三十题
最新九月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试三十题 引言 自发表上一篇文章至今(事实上,上篇文章更新了近3个月之久),blog已经停了3个多月,而在那之前,自开博以来的21个月每月都不曾断过. ...
- 九月腾讯,创新工场,淘宝等公司最新面试三十题(第171-200题) 2011年末
转载自牛人:July http://blog.csdn.net/v_july_v/article/details/6803368 九月腾讯,创新工场,淘宝等公司最新面试三十题(第171-200题) 附 ...
- 九月腾讯,创新工场,淘宝等公司最新面试三十题(第171-200题)
九月腾讯,创新工场,淘宝等公司最新面试三十题(第171-200题) 引言 曾记否,去年的10月份也同此刻一样,是找工作的高峰期,本博客便是最初由整理微软等公司面试题而发展而来的.如今,又即将迈入求职高 ...
最新文章
- VMware CTO:未来VMware NSX与思科ACI将有更多整合
- 栈、堆、静态存储区和程序的内存布局
- 良心之作!超过 10000+ 的互联网团队正在使用的在线 API 文档、技术文档工具
- 程序员谈谈我的职场观(一)
- Yahoo,希望你和微软Bing能过的幸福
- 计蒜客蓝桥杯模拟赛5 引爆炸弹【并查集】
- Leetcode每日一题:50.powx-n
- 第三篇 层次类非线性表的编程实验 第9章 应用二叉树的基本概念编程
- GDI+ 保存HDC为位图文件
- Python 随机生成 范围内(周围) 经纬度 坐标信息
- 杂记之关于视频、音频编/解码
- 计算机的音标英语怎么说,computer是什么意思_computer的翻译_音标_读音_用法_例句_爱词霸在线词典...
- 纪念三毛辞世20周年——《三毛经典语录》
- 数学建模常用算法—灰色预测
- 怎么打破双亲委派机制
- 实验吧-密码学(三)
- python开发的软件可以申请软著吗_python自动化生成软件著作权的源代码
- 360html查看器,360桌面助手提取版独立版优秀桌面管理美化工具
- day01HTML基础入门
- Java编写0-100之间所有奇数和偶数的和
热门文章
- Mac实现ts文件转为mp4文件
- (转)TeamViewer三种许可证的区别是什么?
- layui 表格表头最右侧多一列 解决办法
- SpaceCube v3.0下一代高性能处理器平台架构
- 微信支付全部详细流程
- html半透明遮罩,如何制作网页半透明遮罩效果
- vscode :code runner运行include多个文件的cpp
- 易地图google版,可精确经纬度查询定位
- ps保存html和图像格式不显示,解决ps“储存为web和设备所用格式”灰色不能使用的方法...
- GSM模块通过服务器或GSM内部获取网络时间 网络授时