当前位置:   article > 正文

FOR循环基础功_公园里有一只猴子和一堆桃子

公园里有一只猴子和一堆桃子

八个for循环运用小案例
一、for循环
语法:

for(初始化; 布尔表达式; 更新) {
// 代码语句
}
​ 1.最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句
​ 2.然后,检测布尔表达式的值:如果为 true,循环体被执行;如果为 false,循环终止,开始执行循环体后面的语句

​ 3.执行一次循环后,更新循环控制变量

​ 4.再次检测布尔表达式,循环执行上面的过程

二、循环三要素
​ 1.循环初始化;2.循环条件;3.循环变量的修改。

三、for循环测试
​ 1.有个人想知道,一年之内一对新生兔子能繁殖多少对?于是就筑了一道围墙把一对兔子关在里面。已知一对兔子每个月可以生一对小兔子,每对兔子从出生后第3个月起每月生一对小兔
子。

​ 假如一年内没有发生死亡现象,那么,一对兔子一年内(12 个月)能繁殖成多少对?

  1. package day06;
  2.  
  3. public class day06_Demo1 {
  4.  
  5.  
  6.     public static void main(String[] args) {
  7.  
  8.         day06_Demo1.rabbitTest1();
  9.     }
  10.      private static void rabbitTest1() {
  11.          int sum = 0;
  12.             int tu1 = 1,tu2 = 1;//tu1是第一个月的兔子数,tu2是第二个月的兔子数
  13.             for(int a=3;a<=12;a++) {
  14.                 sum = tu1 + tu2;
  15.                 System.out.println(sum);
  16.                 tu2 = tu1;
  17.                 tu1 = sum;
  18.             }
  19.             System.out.println("第12个月的月末兔子的数量 为: "+sum+"对");
  20.      }


​ 2.计算出1–100之间所有不能被3整除的整数的和大于(或等于)2000的数字。

  1. package day06;
  2.  
  3. import java.util.Iterator;
  4.  
  5. public class day06_Demo2 {
  6.  
  7.     public static void main(String[] args) {
  8.         int sum = 0;
  9.         for (int i = 1; i <= 100;i++) {
  10.             if (i % 3 ==0) {
  11.                 continue;
  12.             }
  13.             sum += i;
  14.             if (sum >= 2000) {
  15.                 System.out.println("这个数是:" + sum);
  16.                 break;
  17.             }
  18.             
  19.         }
  20.  
  21.     }
  22.  
  23. }


​ 3.求s=a+aa+aaa+aaaa+…+a…a的值,其中a是一个数字。例如2+22+222+2222, a的值和加数个数n均从键盘获取。

  1.  package day06;
  2. import java.util.Iterator;
  3. import java.util.Scanner;
  4.  
  5. public class day06_Demo3 {
  6.  
  7.     public static void main(String[] args) {
  8.         int a, n;
  9.         //从控制台输入
  10.         Scanner sc = new Scanner(System.in);
  11.         System.out.println("请输入一个数:");
  12.         a = sc.nextInt();
  13.         System.out.println("请输入需要相加的个数:");
  14.         n = sc.nextInt();
  15.         long b = a;        //每个加数
  16.         long num = 0;    //
  17.         int count = 1;
  18.         
  19.         //循环相加
  20.         for(int i = 0;i < n;i++) {
  21.             System.out.println("第" + count +  "次增加:" + b);
  22.             num += b;
  23.             //计数器
  24.             count++;
  25.             
  26.             //改变加数
  27.             b *= 10;
  28.             b += a;
  29.         }
  30.         System.out.println("\n" + n + "次相加的结果为= " + num);
  31.     }
  32. }

​ 4.将所有的五位数中的回文数打印输出。即12321是回文数,个位与万位相同,十位与干位相同。

  1. package day06;
  2.  
  3. /**
  4. * @fileName : day06_Demo5.java
  5. * @description : TODO
  6. * @date : 2021年12月18日-下午4:47:48
  7. */
  8. public class day06_Demo5 {
  9.     public static void main(String[] args) {
  10.         int x, y, z, h, n;
  11.         for (int i = 10000; i < 100000;i++) {
  12.             x = i / 10000;
  13.             y = i / 1000 % 10;
  14.             z = i / 100 % 10;
  15.             h = i / 10 % 10;
  16.             n = i % 10;
  17.             if (n == x && h == y) {
  18.             System.out.println(i);    
  19.             }
  20.             
  21.         }
  22.     }
  23. }


​ 5.公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,把剩下一半中扔掉一个坏的。到第七天的时候,猴子睁开眼发现只剩下一个桃子。问公园里刚开始有多少个桃子?

  1. package day06;
  2.  
  3. /**
  4. * @fileName : day06_Demo6.java
  5. * @description : 公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,
  6. *                 把剩下一半中扔掉一个坏的。到第七天的时候,猴子睁开眼发现只剩下一个桃子。
  7. *                 问公园里刚开始有多少个桃子?
  8. * @date : 20211219日-下午3:49:21
  9. */
  10.  
  11. public class day06_Demo6 {
  12.     public static void main(String[] args) {
  13.          int count = 1;
  14.             for(int a=1;a<=6;a++) {
  15.                 count = (count+1) * 2;
  16.             }
  17.             System.out.println("公园里原来有: "+count+"个桃子。");
  18.     }
  19. }


 
​ 6.国王的奖励:有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,第二个里面放2粒,第三个里面放4,求棋盘上放的所有芝麻的重量。

  1. package day06;
  2.  
  3. import java.util.Iterator;
  4.  
  5.  
  6. public class day06_Demo7 {
  7.     /**
  8.     * @return : void
  9.     * @Description : 有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,
  10.     *                 第二个里面放2粒,第三个里面放4,求棋盘上放的所有芝麻的重量。
  11.     * @Date : 20211219日下午2:11:12
  12.     */
  13.     public static void main(String[] args) {
  14.         double sum = 0;
  15.         for (int i = 0; i < 64; i++) {
  16.             sum += Math.pow(2,i);
  17.             
  18.         }
  19.         System.out.println("sum =" + sum / 10000);
  20.     }
  21.  
  22. }


​ 7.实现1!+2!+3!+4!+5!+….+n!,n为n的阶乘 等于 1 * 2 * 3 * 4…….* n?

  1. package day06;
  2.  
  3. public class day06_Demo8 {
  4.  
  5.     /**
  6.     * @return : void
  7.     * @Description : 实现1!+2!+3!+4!+5!+....+n!
  8.     *                 n!为n的阶乘 等于 1 * 2 * 3 * 4.......* n?
  9.     * @Date : 2021年12月20日上午9:40:51
  10.     */
  11.     public static void main(String[] args) {
  12.         int n = 5;
  13.         int a = 1;
  14.         int sum = 0;
  15.         for (int i = 1; i < n; i++) {
  16.             a *= i;
  17.             sum += a;
  18.         }
  19.         System.out.println(sum);
  20.     }
  21.  
  22. }


​ 8.【折纸问题】一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?

  1. package day06;
  2.  
  3. public class day06_Demo9 {
  4.     /**
  5.     * @return : void
  6.     * @Description : 一张纸的厚度大约是0.08mm,
  7.     *                 对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?
  8.     * @Date : 2021年12月20日上午9:04:24
  9.     */
  10.     public static void main(String[] args) {
  11.         int sum = 8;
  12.         int count = 0;
  13.         for (double i = 0;; i++) {
  14.             sum = sum * 2;
  15.             count++;
  16.             
  17.             if (sum >= 884813000) {
  18.                 System.out.println("次数为:" + count);
  19.                 System.out.println(sum);
  20.                 break;
  21.             }
  22.             
  23.         }
  24.         
  25.     }
  26.  
  27. }

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号