企业展示网站建设多少钱,做外贸找工厂货源网站,网站怎么制作,广州白云区今天的消息1. 循环高级
1.1 无限循环
for、while、do...while都有无限循环的写法。
最为常用的是while格式的。
因为无限循环是不知道循环次数的#xff0c;所以用while格式的
代码示例#xff1a; while(true){} 1.2 跳转控制语句#xff08;掌握#xff09; 跳转控制语句…1. 循环高级
1.1 无限循环
for、while、do...while都有无限循环的写法。
最为常用的是while格式的。
因为无限循环是不知道循环次数的所以用while格式的
代码示例 while(true){} 1.2 跳转控制语句掌握 跳转控制语句break 跳出循环结束循环 跳转控制语句continue 跳过本次循环继续下次循环 注意 continue只能在循环中进行使用而目前我们知道break仅只能在循环和switch中使用。
以下几个代码逻辑性较强需认真看认真思考。
练习1逢7过
需求
朋友聚会的时候可能会玩一个游戏逢7过
游戏规则从任意一个数字开始报数当你要报的数字是包含7或者是7的倍数时都要说过过
需求使用程序在控制台打印出1-100之间的满足逢七必过规则的数据
代码示例 public class LoopDemo4 {public static void main(String[] args) {//目标听懂并且自己独立写出来//核心//不报数字的条件//个位是7 十位是7 7的倍数//三个条件只要满足一个就不报数字
//游戏的规则//1 2 3 4 5 6 过 8 9 10 11 12 13 过 15 16 过 18 19 20 过...
//循环的开始条件1//结束条件100for (int i 1; i 100; i) {//i依次表示这个范围之内的每一个数字if (i % 10 7 || i / 10 % 10 7 || i % 7 0) {System.out.println(过);continue;}System.out.println(i);}
}
}练习2求平方根
需求
键盘录入一个大于等于2的整数 x 计算并返回 x 的 平方根 。
结果只保留整数部分 小数部分将被舍去 。
代码示例 public class LoopDemo5 {public static void main(String[] args) {//目标听懂思路并且自己独立写出来
//键盘录入10// 1 * 1 1 10// 2 * 2 4 10// 3 * 3 9 10// 4 * 4 16 10//说明10的平方根在3~4之间。保留整数之后3
//键盘录入20//1 * 1 1 20// 2 * 2 4 20// 3 * 3 9 20// 4 * 4 16 20// 5 * 5 25 20//说明20的平方根在4~5之间保留整数之后4
//键盘录入40//1 * 1 1 40// 2 * 2 4 40// 3 * 3 9 40// 4 * 4 16 40// 5 * 5 25 40// 6 * 6 36 40// 7 * 7 49 40//说明40的平方根在6~7之间保留整数之后6
//思路//从1开始循环拿着循环得到的每一个数求平方。//拿着结果跟键盘录入的数字比较。//如果平方之后的结果 录入的数字 表示当前数字就是我们题目的结果//如果平方之后的结果 录入的数字 循环继续//如果平方之后的结果 录入的数字 表示前一个数字就是我们题目的结果//循环的开始条件1//循环的结束条件键盘录入的数字
//1.键盘录入数字Scanner sc new Scanner(System.in);System.out.println(请输入一个整数);int number sc.nextInt();//2.循环找结果for (int i 1; i number; i) {//循环体if (i * i number) {System.out.println(number 的平方根为 i);//如果已经找到了那么后面就不需要再运行了循环直接停止break;}else if(i * i number){System.out.println(number 的平方根为 (i - 1));//如果已经找到了那么后面就不需要再运行了循环直接停止break;}}}
} 练习3求质数
需求
键盘录入一个正整数 x 判断该整数是否为一个质数。
代码示例 public class LoopDemo6 {public static void main(String[] args) {//目标听懂思路并且自己独立写出来
//质数只能被1和本身整除的数。//7 是一个质数//13 是一个质数//8 不是一个质数//25 不是一个质数
//1.键盘录入一个正整数Scanner sc new Scanner(System.in);System.out.println(请输入一个整数);int number sc.nextInt();//2.利用循环进行判断//思路一从1开始到本身number结束在这个范围之内有多少个数字能被键盘录入的number整除//如果只有两个那么表示number是一个质数。
//思路二从2开始到number-1结束在这个范围之内有多少个数字能被number整除//如果没有数字那么表示number是一个质数。
//思路二循环的开始条件2//循环的结束条件number-1int count 0;for (int i 2; i number; i) {//i依次表示2~ number-1 这个范围之内的每一个数字//要求的是在这个范围之内有多少个数字能被number整除if(number % i 0){count;}}//当循环结束之后表示我们已经找到了在2 ~ number-1 这个范围之内有多少个数字能被number整除if(count 0){System.out.println(number 是一个质数);}else{System.out.println(number 不是一个质数);}}
} 以上几个代码是初学者比较难啃的几个编程思维不懂得要好好琢磨。慢慢就懂了。
2. Random
Random产生随机数掌握 概述 Random类似Scanner也是Java提供好的API内部提供了产生随机数的功能 API后续课程详细讲解现在可以简单理解为Java已经写好的代码 使用步骤 导入包 import java.util.Random; 创建对象 Random r new Random(); 产生随机数 int num r.nextInt(10); 解释 10代表的是一个范围如果括号写10产生的随机数就是0-9括号写20参数的随机数则是0-19 扩展点如果第三步没有指定范围那么会在int的取值范围中获取一个随机数。 示例代码 import java.util.Random;
public class RandomDemo {public static void main(String[] args) {//创建对象Random r new Random();//用循环获取10个随机数for(int i0; i10; i) {//获取随机数int number r.nextInt(10);System.out.println(number: number);}//需求获取一个1-100之间的随机数int x r.nextInt(100) 1;//仔细思考为什么这样写很精妙System.out.println(x);}
} Random练习-猜数字小游戏 需求 程序自动生成一个1-100之间的数字使用程序实现猜出这个数字是多少 当猜错的时候根据不同情况给出相应的提示 A. 如果猜的数字比真实数字大提示你猜的数据大了 B. 如果猜的数字比真实数字小提示你猜的数据小了 C. 如果猜的数字与真实数字相等提示恭喜你猜中了 示例代码 import java.util.Random;
import java.util.Scanner;
public class RandomTest {public static void main(String[] args) {//要完成猜数字的游戏首先需要有一个要猜的数字使用随机数生成该数字范围1到100Random r new Random();int number r.nextInt(100) 1;while(true) {//使用程序实现猜数字每次均要输入猜测的数字值需要使用键盘录入实现Scanner sc new Scanner(System.in);System.out.println(请输入你要猜的数字);int guessNumber sc.nextInt();//比较输入的数字和系统产生的数据需要使用分支语句。//这里使用if..else..if..格式根据不同情况进行猜测结果显示if(guessNumber number) {System.out.println(你猜的数字 guessNumber 大了);} else if(guessNumber number) {System.out.println(你猜的数字 guessNumber 小了);} else {System.out.println(恭喜你猜中了);break;}}}
} 运行如下 猜数字小游戏扩展1:掌握
生成随机数的代码不能写在循环里面。
否则每猜一次都会产生一个新的随机数。
猜数字小游戏扩展2:了解
很多游戏中都会有保底机制。
假设在猜数字小游戏中三次猜不中就触发保底机制
代码示例 import java.util.Random;
import java.util.Scanner;
public class RandomDemo2 {public static void main(String[] args) {//分析//1.生成一个1-100之间的随机数字Random r new Random();//扩展1生成随机数的代码不能写在循环里面否则每一次都会生成一个新的随机数//扩展2保底机制3次//定义变量记录猜的次数int count 0;int number r.nextInt(100) 1;System.out.println(number);//2.使用键盘录入的方式去猜Scanner sc new Scanner(System.in);while (true) {System.out.println(请输入你要猜的数字);int guessNumber sc.nextInt();//每猜一次count就count;//判断当前是第几次//如果达到了保底直接提示猜中了if(count 3){System.out.println(猜中了);break;}//3.拿着键盘输入的数字 跟 随机数比较判断if (guessNumber number) {System.out.println(大了);} else if (guessNumber number) {System.out.println(小了);} else {System.out.println(猜中了);break;}}
}
} 注意 这里回顾以下之前在第二天讲的idea有一个设置是自动导包设置不知道大家还有没有印象这里就用到了我们在写代码 Random r new Random(); 的时候可能你不知道这个类在哪个包但是我们设置了自动导包因此文件头部会自动给我们填充上 import java.util.Random; 这就是自动导包设置的好处。