ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java基础(for循环):八个for循环案例

2022-03-21 19:33:54  阅读:179  来源: 互联网

标签:java int sum day06 System 案例 循环 println public


一、for循环
语法:
for(初始化; 布尔表达式; 更新) {

    // 代码语句
}
    1.最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句

    2.然后,检测布尔表达式的值:如果为 true,循环体被执行;如果为 false,循环终止,开始执行循环体后面的语句

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

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

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

三、for循环测试
    1. 有个人想知道,一年之内一对新生兔子能繁殖多少对?于是就筑了一道围墙把一对兔子关在里面。已知一对兔子每个月可以生一对小兔子,每对兔子从出生后第3个月起每月生一对小兔
子。
    假如一年内没有发生死亡现象,那么,一对兔子一年内(12 个月)能繁殖成多少对?

package day06;
 
public class day06_Demo1 {
 
    public static void main(String[] args) {
 
        day06_Demo1.rabbitTest1();
    }
     private static void rabbitTest1() {
         int sum = 0;
            int tu1 = 1,tu2 = 1;//tu1是第一个月的兔子数,tu2是第二个月的兔子数
            for(int a=3;a<=12;a++) {
                sum = tu1 + tu2;
                System.out.println(sum);
                tu2 = tu1;
                tu1 = sum;
            }
            System.out.println("第12个月的月末兔子的数量 为: "+sum+"对");
     }
}
    2.计算出1--100之间所有不能被3整除的整数的和大于(或等于)2000的数字。

package day06;
 
import java.util.Iterator;

 
public class day06_Demo2 {
 
    public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i <= 100;i++) {
            if (i % 3 ==0) {
                continue;
            }
            sum += i;
            if (sum >= 2000) {
                System.out.println("这个数是:" + sum);
                break;
            }
            
        }
 
    }
 
}
    3.求s=a+aa+aaa+aaaa+...+a...a的值,其中a是一个数字。例如2+22+222+2222, a的值和加数个数n均从键盘获取。

package day06;
 
import java.util.Iterator;
import java.util.Scanner;

public class day06_Demo3 {
   
    public static void main(String[] args) {
        int a, n;
        //从控制台输入
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数:");
        a = sc.nextInt();
        System.out.println("请输入需要相加的个数:");
        n = sc.nextInt();
        long b = a;        //每个加数
        long num = 0;    //和
        int count = 1;
        
        //循环相加
        for(int i = 0;i < n;i++) {
            System.out.println("第" + count +  "次增加:" + b);
            num += b;
            //计数器
            count++;
            
            //改变加数
            b *= 10;
            b += a;
        }
        System.out.println("\n" + n + "次相加的结果为= " + num);
    }
}
    4.将所有的五位数中的回文数打印输出。即12321是回文数,个位与万位相同,十位与干位相同。

package day06;

public class day06_Demo5 {
    public static void main(String[] args) {
        int x, y, z, h, n;
        for (int i = 10000; i < 100000;i++) {
            x = i / 10000;
            y = i / 1000 % 10;
            z = i / 100 % 10;
            h = i / 10 % 10;
            n = i % 10;
            if (n == x && h == y) {
            System.out.println(i);    
            }
            
        }
    }
}
    5.公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,把剩下一半中扔掉一个坏的。到第七天的时候,猴子睁开眼发现只剩下一个桃子。问公园里刚开始有多少个桃子?

package day06;
 
/**
* @fileName : day06_Demo6.java
* @description : 公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,
*                 把剩下一半中扔掉一个坏的。到第七天的时候,猴子睁开眼发现只剩下一个桃子。
*                 问公园里刚开始有多少个桃子?

* @date : 2021年12月19日-下午3:49:21
*/
 
public class day06_Demo6 {
    public static void main(String[] args) {
         int count = 1;
            for(int a=1;a<=6;a++) {
                count = (count+1) * 2;
            }
            System.out.println("公园里原来有: "+count+"个桃子。");
    }
}
 
    6.国王的奖励:有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,第二个里面放2粒,第三个里面放4,求棋盘上放的所有芝麻的重量。

package day06;
 
import java.util.Iterator;
 

public class day06_Demo7 {
    /**
    * @return : void
    * @Description : 有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,
    *                 第二个里面放2粒,第三个里面放4,求棋盘上放的所有芝麻的重量。
    * @Date : 2021年12月19日下午2:11:12
    */
    public static void main(String[] args) {
        double sum = 0;
        for (int i = 0; i < 64; i++) {
            sum += Math.pow(2,i);
            
        }
        System.out.println("sum =" + sum / 10000);
    }
 
}
    7.实现1!+2!+3!+4!+5!+....+n!,n为n的阶乘 等于 1 * 2 * 3 * 4.......* n?

package day06;
 

public class day06_Demo8 {
 
    /**
    * @return : void
    * @Description : 实现1!+2!+3!+4!+5!+....+n!
    *                 n!为n的阶乘 等于 1 * 2 * 3 * 4.......* n?
    * @Date : 2021年12月20日上午9:40:51
    */
    public static void main(String[] args) {
        int n = 5;
        int a = 1;
        int sum = 0;
        for (int i = 1; i < n; i++) {
            a *= i;
            sum += a;
        }
        System.out.println(sum);
    }
 
}
    8.【折纸问题】一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?

package day06;
 

public class day06_Demo9 {
    /**
    * @return : void
    * @Description : 一张纸的厚度大约是0.08mm,
    *                 对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?
    * @Date : 2021年12月20日上午9:04:24
    */
    public static void main(String[] args) {
        int sum = 8;
        int count = 0;
        for (double i = 0;; i++) {
            sum = sum * 2;
            count++;
            
            if (sum >= 884813000) {
                System.out.println("次数为:" + count);
                System.out.println(sum);
                break;
            }
            
        }
        
    }
 
}

标签:java,int,sum,day06,System,案例,循环,println,public
来源: https://blog.csdn.net/RIZZ_/article/details/123643625

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有