一、问题描述:

17个人围成一个圈,编号为1~17,从第一号开始报数,报到3的倍数的人离开,一直数下去,直到最后只有一个人,求此人编号。

二、问题提示:

使用一维数组,数组元素初始为1,从1开始把数字放进数组空间,若数组元素为3的倍数,则把其置0,循环下去直到计数器(counter)减为1,则跳出循环并输出其数组下标(加1即为编号)

三、参考代码:

//(2)17个人围成一个圆圈,编号为1~17,从第一号开始报数,报到3的倍数的人离开,一直数下去,直到最后只有一个人,求此人编号 package com.java.job; public class HandkerchiefQuestion { public static void main(String[] args) { int n = 13;// 人数 int counter = n;// 计数器 int num = 1;// 数数 int[] array = new int[n];//声明数组 for (int i = 0; i < array.length; i++) {//数组初始化 array[i] = 1; } loop: while (true) { for (int j = 0; j < array.length; j++) { if (array[j] != 0) {//如果数组元素不为0,则从1开始赋值 array[j] = num; if (num % 3 == 0) {//如果赋给数组元素的数能够整除3,则把此数组元素置0,计数器减1(即踢掉一个人) array[j] = 0; counter = counter - 1; if (counter == 1) {//如果最后只剩下一个人,跳出循环 break loop; } } num = num + 1; } } } for (int k = 0; k < n; k++) { if (array[k] != 0) { System.out.println("最后赢家的编号为:"+(k + 1)); } } } }

java入门小程序—17人游戏(丢手绢问题)相关推荐

  1. Java 丢手绢游戏 求和_java入门小程序—17人游戏(丢手绢问题)

    一.问题描述: 17个人围成一个圈,编号为1~17,从第一号开始报数,报到3的倍数的人离开,一直数下去,直到最后只有一个人,求此人编号. 二.问题提示: 使用一维数组,数组元素初始为1,从1开始把数字 ...

  2. 丢手帕问题 java_java入门小程序—17人游戏(丢手绢问题) | 学步园

    一.问题描述: 17个人围成一个圈,编号为1~17,从第一号开始报数,报到3的倍数的人离开,一直数下去,直到最后只有一个人,求此人编号. 二.问题提示: 使用一维数组,数组元素初始为1,从1开始把数字 ...

  3. java mvc 小程序_[Java教程]Spring MVC 的环境搭建和入门小程序

    [Java教程]Spring MVC 的环境搭建和入门小程序 0 2017-02-17 00:00:16 1.1.下载spring框架包. 1.1.1百度搜索Spring Framework. 进入s ...

  4. 视频教程-5小时零基础入门小程序云开发-微信开发

    5小时零基础入门小程序云开发 码农一枚,非著名全栈开发人员.分享自己的一些经验,学习心得,希望后来人少走弯路,少填坑. 多年全栈开发经验,擅长小程序,java,安卓,web前端开发. 邱石 ¥29.0 ...

  5. H5网页游戏(js),游戏小程序,网页游戏引擎

    采用了Three.js作为3D引擎库,结合tween.js作为配套的动画库,以及基于webpack的脚手架nowa链接作为技术支持.市面上比较成熟的3D库有Three.js和Babylon.js. B ...

  6. 基于java微信小程序的校园二手商城设计与实现

    基于java微信小程序的二手商城设计与实现 首先介绍一下SpringSecurity安全登陆框架 微信小程序 我用的是mysql数据库 这是我小程序的用例图 系统总体功能架构图 系统功能模块设计 数据 ...

  7. in java中文版百度云 thinking_小程序订阅消息推送(含源码)java实现小程序推送,springboot实现微信消息推送...

    前面写过一篇云开发实现小程序订阅消息(模板消息)推送的文章,<借助云开发实现小程序订阅消息和模板消息的推送功能>是有好多同学用的是Java写后台,所以今天就再来写一篇Java后台实现小程序 ...

  8. 零基础入门小程序,实战经验分享

    讲师介绍:连胜大佬曾经就职于点心移动 & 百度,折腾小程序也有段时间了,参与开发的"小小签到"小程序,在2017年荣获阿拉丁神灯奖.我公司开发了多个工具类小程序,已有四款小 ...

  9. 简单Python入门小程序

    简单Python入门小程序 简单Python入门小程序 1.猜拳击小游戏,三次后结束.石头-0,剪刀-1,布-2,如果输入错误则提示错误输入. import random i=0 while 1:pe ...

最新文章

  1. day07-字符编码、文件操作
  2. MYSQL ROOT权限丢失的解决方法
  3. Git入门及上传项目到github中
  4. D3D自定义的设备丢失对象
  5. jQuery从后面开始截取
  6. Injection with CDI (Part I)
  7. iOS UITextField设置起始字符开始位置
  8. 博为峰Java技术文章 ——JavaSE Swing焦点事件的处理
  9. MAVEN处理本地jar包 ojdbc7 的spingboot配置
  10. 第一次使用Pocket-PowerBuilder和开发DLL的经历
  11. oracle 中的Ipad()函数
  12. 手写在线计算机,在线手写
  13. 城市应急管理系统技术方案
  14. BASLER巴斯勒线扫相机使用流程
  15. 按键精灵实现远程获取消息内容自动发送到群里(支持多个qq)
  16. 路由器管理页面html,小米路由器管理后台(小米AIoT路由器登录管理页面地址)...
  17. 宏病毒的研究与实例分析04——实战分析
  18. 123457123457#0#-----com.cym.YuErBaiKe02--前拼后广--育儿百科
  19. 小学生计算机校本课程教材,二年级校本课程教材
  20. SMPL:数据增强之处理pose和3d点

热门文章

  1. iphone html 手机震动,iPhone能自己设置想要的振动方式?知道这个玩法后简直停不下来...
  2. python循环叠加求和_python基础教程python使用隐式循环快速求和的实现示例
  3. 【2023最新】超详细图文保姆级教程:App开发新手入门(4)
  4. 数字化如何给企业赋能
  5. html中怎么插入文档,word如何输入引用 word文档中怎么插入参考文献
  6. 【python教程入门学习】ASCII编码,将英文存储到计算机
  7. 后台防止表单重复提交
  8. MySQL自增字段不连续的原因和解决方法
  9. iphonex验证服务器,【苹果iPhoneX评测】作死验证IP67到底靠不靠谱_手机评测-中关村在线...
  10. 盲水印API接口技术原理及实现方式