假设游戏者共有十人,且有10个不同的姓:张、王、李、赵、刘、于、许、金、钱、孙,魔术师将十个姓写在四张纸牌上,游戏者只需指出那几张纸上有自己的姓,魔术师就能准确的说出游戏者的姓,如图所示。

请编程实现:

  1. 分组输出姓氏,让用户选择姓氏所在的组。
  2. 给出你猜的姓氏。

 代码如下

package shiyan5;import java.util.Scanner;public class GuessGame {public static void main(String[] args) {int quotient;//商数int remainder=-1;//余数int position;//数组索引char[] firstNames={' ','李','王','张','刘','陈','杨','赵','黄','周','吴'};//通过二进制数据的规律将十个姓氏放在不同组里String[] groups=new String[]{"","","","",""};for (int i = 1; i <firstNames.length ; i++) {quotient=i;position=groups.length-1;while(quotient!=0){remainder=quotient%2;quotient=quotient/2;if(remainder==1){groups[position]+=firstNames[i];}position--;}//输出给组姓氏}for (int i =1;i<groups.length;i++) {System.out.println(i+":"+groups[i]);}System.out.println("请输入您所想的姓氏所在位置:(以-1表示结束):");char[] c=new char[]{'0','0','0','0'};//用于存放用户输入的组别int i=9999999;Scanner sc = new Scanner(System.in);//获取用户输入,为-1时终止循环,非-1时将c数组赋值为字符型的"'1'"while (true){i=sc.nextInt();if(i==-1){break;}c[i-1]='1';}System.out.println(c);//输出二进制数int answer=0;for (i=0;i<c.length;i++){answer+=(c[i]-'0')*Math.pow(2,4-i-1);}System.out.println("请问您的姓氏为:");//输出姓氏System.out.println(firstNames[answer]);}}

JAVA综合性实验——猜姓氏游戏相关推荐

  1. Java实验二猜数字游戏,JAVA-第2周实验-猜数字游戏

    JAVA--第2周实验--猜数字游戏 /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reser ...

  2. java猜数字游戏总结,java课程设计——猜数字游戏

    java课程设计--猜数字游戏 目目 录录 前言. 1 正文. 1 1 1.设计任务与要求.设计任务与要求 1 1.1 1.1 设计任务与要求设计任务与要求 1 1.2 1.2 选题目的与意义选题目的 ...

  3. Java基础编写猜数游戏

    Java基础编写猜数游戏 设计内容及要求 产生一个100以内的随机数,游戏者进行猜数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜对为止.游戏结束后计算出玩家所猜的次数. 目的及意义 通过猜数 ...

  4. python实验猜数游戏

    实验目的: 1.熟练运用选择结构与循环结构解决实际问题. 2.注意选择结构嵌套时代码的缩进与对齐. 3.理解带 else 子句的循环结构执行流程. 4.理解条件表达式 value1 if condit ...

  5. Java实现自制猜数游戏(附源码)

    这里是Java系列文章,主要介绍有Java的使用及Java相关的,如Java语言本身以及Java等级考试 Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继 ...

  6. java编程题-猜数字游戏

    猜数字游戏 生成一个1~100之间的随机数.1.输入0,直接退出游戏.2.记录成绩,1~3 A,4~6 B,7~10 C,超过10次提示封号.4.输入游戏难度等级,1 容易 1~50,2 中等 1~1 ...

  7. Java小工具-猜数字游戏(exe版)另附Java文件转exe文件教程

    游戏效果: 系统会随机生成一正整数(1~100),猜测该数字,猜的次数越少,得分越高,6次猜不中,游戏结束.在这之前你将无法退出程序! 程序部分截图: 没有很复杂的逻辑,就直接上代码了(可以直接跑): ...

  8. Java小玩意:猜数游戏

    通过Random获取随机数实现的一个超简单的猜数游戏 上代码: //导包 import java.util.Random; import java.util.Scanner;public class ...

  9. Java语言编写猜字游戏

    /*** 一个类A有一个实例变量v,从键盘接收一个正整数作为实例变量v的初始值.* 另外再定义一个类B,对A类的实例变量v进行猜测.* 如果大了则提示大了,小了则提示小了,等于则提示猜测成功*/ pu ...

最新文章

  1. R可视化lend_club 全球最大的P2P平台数据75W条
  2. 想上云,请评估与思考上云目的
  3. Pyechart:30分钟学会pyecharts数据可视化
  4. Linux下ejabberd安装配置
  5. 电商扣减库存_电商平台仓库管理系统究竟有何功能?
  6. multism中ui和uo应该怎么表示_吐血整理!这篇带你彻底理解主存中存储单元地址的分配...
  7. CSS3新单位vw,vh,vmin,vmax详解
  8. 春节临近|传统彩色手绘年画素材,满满东方韵味
  9. 分区怎么4k对齐_电脑升级SSD后,依然卡顿怎么解决?
  10. Unity3D基础30:协同程序
  11. 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表
  12. 【#】Spring3 MVC 注解(二)---@RequestMapping
  13. :将照片处理成绘画风格
  14. CSRF(跨站请求伪造)
  15. IT项目经理面试题分解
  16. BufferedImage 图片背景色黑色问题
  17. 紧跟步伐,何恺明新作MAE复现历程
  18. Python面试宝典(第十二章 企业真题实战)
  19. 解决undefined reference to symbol ‘LZ4_decompress_safe‘问题
  20. CTime和COleDateTime区别 比较

热门文章

  1. leetcode刷题之 树(14)-递归:找出二叉树中第二小的节点
  2. 看雪3万课程笔记-FRIDA高级API实用方法:Frida Hook Java(一)
  3. 团队项目开发流程总结
  4. C# vs Java —— 剑客vs刀客 Java vs .NET之飘逸的Java
  5. [软考]之原码、反码、补码和移码
  6. Windows10企业版 VS2017编译 MongoDB C++ Driver3.1.1 全过程
  7. java months between,java 8-chronounit.months.between(fromdate,todate)不能按预期工作
  8. OptiView® XG 网络分析平板电脑特性(上)
  9. LeetCode数据库题目1-123
  10. devc++不兼容_最好的兼容HomeKit的智能灯泡