当前位置: 首页 > news >正文

05-java基础——循环习题

循环的选择:知道循环的次数或者知道循环的范围就使用for循环,其次再使用while循环

猜数字

  • 程序自动生成一个1-100之间的随机数,在代码中使用键盘录入去猜出这个数字是多少?
    • 要求:使用循环猜,一直猜中为止。
  • 思路分析:
    • 1-100之间的随机数(random函数)
    • 一直猜中为止:不知道猜测多少次才中(循环的次数不确定)
public class guess {public static void main(String[] args) {
//        程序自动生成一个1-100之间的随机数,在代码中使用键盘录入去猜出这个数字是多少?//要求:使用循环猜,一直猜中为止。Random random = new Random();
//        int number = random.nextInt(100);
//       表示随机生成一个0-99的数//        随机生成一个1-100的数int number = random.nextInt(100)+1;Scanner scanner = new Scanner(System.in);
//        不知道循环的次数或者不知道循环的范围,可以使用while循环while (true){System.out.println("输入猜测的数字:");int i = scanner.nextInt();
//            猜对了就跳出循环,猜不对继续猜if (i > number){System.out.println("你猜的数字大了");}else if (i < number){System.out.println("你猜的数字小了");}else {System.out.println("你猜对了");break;}}}
}

逢7过

  • 游戏规则:从任意一个数字开始报数,当你要报的数字是包含7或者是7的倍数时都要说过:过

    • 需求:使用程序在控制台打印出1-100之间的满足逢七必过规则的数据
  • 分析:

    • 1-100之间的数字:知道了循环的范围——使用for循环
    • 数字满足包含7或者是7的倍数就输出过(写出这个条件的判断语句即可)
public class fengqiguo {public static void main(String[] args) {/*逢7过:游戏规则:从任意一个数字开始报数,当你要报的数字是包含7或者是7的倍数时都要说过:过需求:使用程序在控制台打印出1-100之间的满足逢七必过规则的数据*/for(int i = 1; i<= 100 ; i++){
//           排除7的倍数:i%7 ==0;
//           排除十位上的数是7的:i /10%10 == 7;(i/10可以得出十位上的数,再%10就是判断是否符合规则)
//            排除个位上是7的:i%10 == 7;if (i % 7 == 0 || i /10%10 == 7 || i % 10 == 7 ){
//                包含7或者是7的倍数时就输出过,并跳出循环System.out.println("过");continue; // 跳过当前循环}
//            不包含7或者是7的倍数时就正常输出数字System.out.println(i);}}
}

回文数的判断

在这里插入图片描述

  • 思路分析:
    • 算出倒序的数,然后与原来的数比较
public class huiwenshu {public static void main(String[] args) {int x=12291;int temp = x;int num = 0;while(x != 0){
//            拿到最左边的数字int a = x%10;
//            把原来的数去掉最左边一位x = x/10;
//         计算倒序的数num = num * 10 + a;}
//        比较判断if (num == temp){System.out.println("是回文数");}else {System.out.println("不是回文数");}}
}

计算一个数的平方根

  • 需求:键盘录入一个大于等于2的整数 x ,计算并返回 x 的 平方根 。结果只保留整数部分 ,小数部分将被舍去 。
  • 利用循环实现
    • 思路:利用列举法找出规律:
      • 1的平方=1
      • 2的平方=4
      • 3的平方=9
      • 4的平方=16
import java.util.Scanner;public class pingfanggen {public static void main(String[] args) {
//        	键盘录入一个大于等于2的整数 x ,计算并返回 x 的 平方根 。
//        	结果只保留整数部分 ,小数部分将被舍去 。Scanner scanner = new Scanner(System.in);System.out.print("录入的数字:");int number = scanner.nextInt();for (int i = 1;i <= number-1 ;i++){//从1开始循环,拿着数字的平方跟原来的数字进行比较//如果小于number,那么继续往后判断if (i * i == number){//如果相等,那么当前数字就是平方根System.out.println("number 的平方根是" + i);break;}else if (i * i > number){//如果大于的,那么前一个数字就是平方跟的整数部分System.out.println("number 的平方根的整数部分是" + (i-1));break;}}}
}
  • 使用java的工具类实现
    • 在Java中,你可以使用Scanner类来从键盘获取输入,然后使用Math.sqrt()函数来计算平方根
    • 由于Math.sqrt()返回的是一个double类型的值,你可以使用类型转换或者Math.floor()、(int)来舍去小数部分,只保留整数部分。
import java.util.Scanner;  public class SquareRootExample {  public static void main(String[] args) {  Scanner scanner = new Scanner(System.in);  // 提示用户输入一个大于等于2的整数  System.out.print("请输入一个大于等于2的整数: ");  int x = scanner.nextInt();  // 检查输入是否大于等于2  while (x < 2) {  System.out.println("输入的数字小于2,请重新输入: ");  x = scanner.nextInt();  }  // 计算平方根并只保留整数部分  double sqrt = Math.sqrt(x);  int result = (int) sqrt; // 或者使用 Math.floor(sqrt) 但在这里结果是一样的,因为sqrt是正的  // 输出结果  System.out.println("整数部分的平方根是: " + result);  // 关闭Scanner  scanner.close();  }  
}

判断一个数是否为质数

  • 需求: 键盘录入一个正整数 x ,判断该整数是否为一个质数。
    • 思路:理解什么是质数,然后根据质数的特征进行代码的编写
import java.util.Scanner;public class zishu {public static void main(String[] args) {
//        键盘录入一个正整数 x ,判断该整数是否为一个质数。//质数:质数(也称为素数)是大于1的自然数,并且除了1和它本身以外不再有其他因数的数。换句话说,质数只有两个正因数:1和它本身。
//如果一个整数只能被1和本身整除,那么这个数就是质数。否则这个数叫做合数//7 = 1 * 7 质数,13也是质数
//8 = 1 * 8  2 * 4 合数Scanner scanner = new Scanner(System.in);System.out.print("录入数字:");int number = scanner.nextInt();//定义一个变量,表示标记//标记着number是否为一个质数//true: 是一个质数//false : 不是一个质数//表示最初就认为number是一个质数boolean flag = true;//        2是最小的质数
//        注意:当number=2的时候,是不符合i< number的条件的,所以没有进入循环语句for (int i=2 ; i<number;i++){if (number % i == 0){flag = false;break;}}if (!flag){System.out.println("这个数不是质数");}else {System.out.println("这个数是质数");}}
}

相关文章:

05-java基础——循环习题

循环的选择&#xff1a;知道循环的次数或者知道循环的范围就使用for循环&#xff0c;其次再使用while循环 猜数字 程序自动生成一个1-100之间的随机数&#xff0c;在代码中使用键盘录入去猜出这个数字是多少&#xff1f; 要求&#xff1a;使用循环猜&#xff0c;一直猜中为止…...

网络安全等级保护测评

网络安全等级保护 《GB17859 计算机信息系统安全保护等级划分准则》 规定计算机信息系统安全保护等级共分五级 《中华人民共和国网络安全法》 “国家实行网络安全等级保护制度。 等级测评 测评机构依据国家网络安全等级保护制度规定&#xff0c;按照有关 管理规范和…...

真有被这套零售数据分析方案惊艳到

在数字化时代&#xff0c;零售行业的竞争愈发激烈&#xff0c;如何精准把握市场动态、优化业务流程、提升市场竞争力成为了每一家零售企业都面临的挑战。奥威BI零售数据分析方案&#xff0c;一款具备全面、高效、智能的数据分析能力的BI方案出现地恰到好处。 奥威BI零售数据分…...

亚马逊卖家为何需要自养账号?揭秘背后的原因

亚马逊是一家极为重视用户体验的国际电商平台&#xff0c;因此用户的评论和星级评价对店铺排名影响深远。平台审核评论非常严格&#xff0c;这些评价直接影响商品在平台上的生存和发展。 在亚马逊上&#xff0c;用户的评分和评论对商品的成功至关重要。好评多的商品通常被认为优…...

牛了,LSTM+Transformer王炸结合创新,荣登Nature,精度高达95.65%

【LSTM结合Transformer】的研究方向探索了如何利用Transformer模型处理序列数据的能力以及LSTM在捕捉时间序列依赖性方面的优势。这一方向的意义在于通过融合两种模型的特点&#xff0c;提高了对复杂时空数据的预测准确性&#xff0c;尤其是在智能电网攻击检测、多变量时间序列…...

Java面试题:通过实例说明工厂模式和抽象工厂模式的用法,以及它们在解耦中的作用

工厂模式和抽象工厂模式是创建型设计模式中的两种&#xff0c;主要用于对象的创建&#xff0c;并且通过将对象的创建过程封装起来&#xff0c;来实现代码的解耦和灵活性。下面通过具体实例来说明这两种模式的用法及其在解耦中的作用。 工厂模式&#xff08;Factory Method Pat…...

成都欣丰洪泰文化传媒有限公司电商服务的创新者

在数字化浪潮席卷全球的今天&#xff0c;电商行业正以前所未有的速度蓬勃发展。作为这一领域的佼佼者&#xff0c;成都欣丰洪泰文化传媒有限公司凭借其对电商服务的深度理解和精准把握&#xff0c;成功在竞争激烈的市场中脱颖而出&#xff0c;成为行业内的佼佼者。 一、公司简…...

学习笔记——动态路由——RIP(距离矢量协议)

一、距离矢量协议 1、距离矢量协议 矢量行为&#xff1a;协议收到一个路由之后&#xff0c;查看是否可以加入到本地的路由表中&#xff0c;如果可以加入&#xff0c;则可以传递&#xff0c;如果不可以加入&#xff0c;则无法传递。 距离矢量路由协议 RIP基于距离矢量算法(又…...

【python】OpenCV—Segmentation

文章目录 cv2.kmeans牛刀小试 cv2.kmeans cv2.kmeans 是 OpenCV 库中用于执行 K-Means 聚类算法的函数。以下是根据参考文章整理的 cv2.kmeans 函数的中文文档&#xff1a; 一、函数功能 cv2.kmeans 用于执行 K-Means 聚类算法&#xff0c;将一组数据点划分到 K 个簇中&…...

python-题库篇-Python语言特性

文章目录 Python语言特性1 Python的函数参数传递2 Python中的元类(metaclass)3 staticmethod和classmethod4 类变量和实例变量5 Python自省6 字典推导式7 Python中单下划线和双下划线8 字符串格式化:%和.format9 迭代器和生成器10 *args and **kwargs11 面向切面编程AOP和装饰器…...

WEB界面上使用ChatGPT

&#xff08;作者&#xff1a;陈玓玏&#xff09; 开源项目&#xff0c;欢迎star哦&#xff0c;https://github.com/tencentmusic/cube-studio 随着大模型不断发展&#xff0c;现在无论写代码&#xff0c;做设计&#xff0c;甚至老师备课、评卷都可以通过AI大模型来实现了&…...

【Matlab】CNN-LSTM分类 卷积神经网络-长短期记忆神经网络组合模型(附代码)

资源下载&#xff1a; https://download.csdn.net/download/vvoennvv/89466499 分类算法资源合集&#xff1a;https://download.csdn.net/download/vvoennvv/89466519 目录 Matlab SVM支持向量机分类算法 Matlab RF随机森林分类算法 Matlab RBF径向基神经网络分类算法 Ma…...

性能工具之 MySQL OLTP Sysbench BenchMark 测试示例

文章目录 一、前言二、测试环境1、服务器配置2、测试拓扑 三、测试工具安装四、测试步骤1、导入数据2、压测数据3、清理数据 五、结果解析六、最后 一、前言 做为一名性能工程师掌握对 MySQL 的性能测试是非常必要的&#xff0c;本文基于 Sysbench 对MySQL OLTP&#xff08;联…...

【QT】QCustomPlot库中iSelectPlottables的使用

QCP::iSelectPlottables 是 QCustomPlot 库中的一个枚举值&#xff0c;用于控制选择交互。QCustomPlot 是一个用于创建绘图和数据可视化的Qt库。 QCP::iSelectPlottables 允许用户选择图表中的绘图对象&#xff08;如图形、曲线、柱状图等&#xff09;。 应用场景 QCP::iSele…...

字节跳动联手博通:5nm AI芯片诞生了?

字节跳动联手博通&#xff1a;5nm AI芯片诞生了&#xff1f; 前言 就在6月24日&#xff0c;字节跳动正在与美国博通合作开发一款5纳米工艺的专用集成电路(ASIC) AI处理器。这款芯片旨在降低采购成本并确保高端AI芯片的稳定供应。 根据报道&#xff0c;尽管芯片设计工作进展顺利…...

【数据结构与算法】动态查找表(二叉排序树,二叉平衡树)详解

二叉排序树的数据结构。 struct TreeNode {ElemType data;TreeNode *left, *right; }; using BiTree TreeNode *;结构体包含三个成员&#xff1a; data 是一个 ElemType 类型的变量&#xff0c;用于存储二叉搜索树节点的数据。left 是一个指向 TreeNode 类型的指针&#xff…...

PyTorch中“No module named ‘torch._six‘“的报错场景及处理方法

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引入 在使用PyTorch时&#xff0c;您可能会遇到"No module named ‘torch._six’"的错误。这通常是因为PyTorch的某些…...

Spring Boot 集成 MinIO 实现文件上传

Spring Boot 集成 MinIO 实现文件上传 一、 Minio 服务准备 MinIO的搭建过程参考 Docker 搭建 MinIO 对象存储。 登录MinIO控制台&#xff0c;新建一个 Bucket&#xff0c;修改 Bucket 权限为公开。 二、MinIO 集成 添加 MinIO 依赖 <!-- https://mvnrepository.com/ar…...

目标跟踪——KCF源码用python实现

from numpy.fft import fft2, ifft2, fftshift import cv2 import numpy as npclass HOG:def __init__(self, winSize):""":param winSize: 检测窗口的大小"""self.winSize winSizeself.blockSize (8, 8)self.blockStride (4, 4)self.cellSiz…...

前端 转换笔记

<!DOCTYPE html> <html> <head> <meta charset"utf-8" /> <title>转换</title> <style> .box{ /* 盒子摆在body的正中间 */ position: absolut…...

基于Spark的分布式量化交易框架:事件驱动架构与实战开发

1. 项目概述与核心价值最近在跟几个做量化交易的朋友聊天&#xff0c;发现一个挺有意思的现象&#xff1a;大家手里或多或少都有一些基于Python的量化策略&#xff0c;但真正能稳定、高效、自动化跑起来的&#xff0c;却不多。问题往往出在几个地方&#xff1a;要么是本地机器性…...

从零打造3D打印外壳:精准适配Adafruit Trellis控制器全流程

1. 项目概述与核心思路如果你手头有一块Adafruit Trellis按钮板&#xff0c;想把它变成一个握感扎实、外观专业的独立设备&#xff0c;比如一个迷你音乐控制器或者游戏手柄&#xff0c;那么为它设计并打印一个专属外壳&#xff0c;几乎是必经之路。这个项目远不止是把电路板塞进…...

(最新版)GitGitHub实操图文详解教程(06)—git status命令

版权声明 本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 1. 应用场景 git status 是 Git 中最常用的命令之一,用于查看当前仓库的状态。它能够告诉你: 当前所在分支 哪些文件被修改但未暂存 哪些文件已暂存但尚未提交 哪些文件未被 Git 跟踪 对于初学…...

保姆级教程:用STM32+ESP8266+微信小程序,5分钟搞定Onenet数据上传与设备控制

零基础实战&#xff1a;STM32ESP8266微信小程序极速对接Onenet全指南 在物联网技术快速普及的今天&#xff0c;许多嵌入式开发者都希望快速搭建一个完整的智能设备系统。本文将带你用最简单的方式&#xff0c;通过STM32微控制器、ESP8266 WiFi模块和微信小程序&#xff0c;实现…...

从官方例程到实战:剖析lwip+FreeRTOS在Zynq7020上的TCP热拔插实现与任务调度优化

1. 官方例程热拔插实现机制拆解 第一次在Zynq7020上看到TCP热拔插功能时&#xff0c;确实让我这个老嵌入式工程师也眼前一亮。官方例程里那个看似简单的link_detect_thread任务&#xff0c;实际上藏着不少精妙设计。我们先从PHY芯片的状态检测说起——这个看似基础的操作&#…...

【免费下载】 车牌识别字符库

车牌识别字符库 【下载地址】车牌识别字符库 本仓库提供了一个车牌识别字符库&#xff0c;该字符库已经过预处理&#xff0c;将车牌上的字符进行了切割和分割&#xff0c;每个字符均为单独的图像文件。字符图像的大小统一为20x20像素&#xff0c;涵盖了车牌上常见的省份简写、数…...

【亲测免费】 探索RS485通信的利器:开源项目推荐

探索RS485通信的利器&#xff1a;开源项目推荐 【下载地址】RS485通信程序 本仓库提供了一个完整的RS485通信程序&#xff0c;经过本人亲自测试&#xff0c;程序注释详细&#xff0c;非常适合作为学习和开发的参考例程。无论你是初学者还是有经验的开发者&#xff0c;这个资源都…...

别再死记硬背了!PADS Logic/Layout/Router这三个界面,到底该怎么分工协作?

PADS三剑客协作指南&#xff1a;从原理图到PCB的高效设计流 在电子设计自动化&#xff08;EDA&#xff09;领域&#xff0c;Mentor Graphics&#xff08;现为Siemens EDA&#xff09;的PADS系列工具以其专业性和高效性著称。然而&#xff0c;许多初学者常陷入一个误区——将PAD…...

35岁程序员亲历:AI时代如何避免踩坑?收藏这份避坑指南,小白也能看懂大模型!

作者作为一名有十多年经验的程序员&#xff0c;分享了自己在AI快速发展背景下&#xff0c;利用GPT Pro和Deep Research进行产品调研的经历。文章指出&#xff0c;仅依靠AI工具并不足以成功&#xff0c;更重要的是要找到真实的市场痛点和需求。作者通过实际案例分析了纯工具类、…...

【技术解析】从点测量到全场感知:DIC三维应变测量如何革新传统应变片测试范式

1. 从点到面的技术革命&#xff1a;为什么我们需要全场应变测量&#xff1f; 记得我第一次接触材料力学测试时&#xff0c;导师让我用传统应变片测量一块铝合金板的拉伸变形。我花了整整三天时间&#xff0c;在试样上贴了二十多个应变片&#xff0c;结果数据还是支离破碎。那时…...