Java学习之循环(for,while,do...while)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、for循环
    • 1、例题
  • 二、while循环
    • 1.例题


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、for循环

1、例题

1.求1-100的偶数和

/*
         /*
            需求:在实际开发中,如果要获取一个范围中的每一个数据时,也会用到循环。
             比如:求1-5之间的和
       /*
           需求:在实际开发中,如果要获取-一个范围中的每一一个数据时, 会用到循环。
                但是此时,大多情况下,不会获取所有的数据,而是获取其中符合要求的数据。
                此时就需要循环和其他语句结合使用了。
            比如1-100之间的偶数和
         */
       int sum=0;
       for (int i=0;i<=100;i++){
           if (i%2==0){
               sum+=i;
           }
        }
        System.out.println("1-100的偶数和是:"+sum);

注意:求和的变量不能定义在循环体里面

2.统计满足条件的数字

/*                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             /*需求:键盘录入两个数字,表示一个范围。
         统计这个范围中。
         既能被3整除,又能被5整除数字有多少个?
         需求:键盘录入两个数字,表示一个范围。统计这个范围中。
         既能被3整除,又能被5整除数字有多少个?
         */
        Scanner sc = new Scanner(System.in);
        System.out.println("输入起始范围");
        int start = sc.nextInt();
        System.out.println("输入结束范围");
        int end = sc.nextInt();

        int sum=0;
        for (; start <= end; start++) {
            if (start % 3 == 0 && start % 5 == 0) {
                System.out.println(start);
                sum++;
            }
        }
        System.out.println("既能被3整除,又能被5整除数字有"+sum+"个");

二、while循环

1.例题

1.打印折纸的次数

需求:世界最高山峰是珠穆朗玛峰(8844.43=8844430毫米),假如我
//        有一张足够大的纸,它的厚度是0.1毫米。
//        请问,我折叠多少次,可以折成珠穆朗玛峰的高度?
        int count=0;
        double paper = 0.1,mount=8844430
        while (paper<=mount	){
            paper*=2;
            count++;
        }
        System.out.println("折叠"+count+"次,可以折成珠穆朗玛峰的高度");

2.回文数(典型例题)

 /*  需求:给你一个整数x。
            如果X是一个回文整数,打印true,否则,返回false。
            解释:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
            例如,121是回文,而123不是。
         */

        //输入数据
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int x =sc.nextInt();

        //核心思路:把原属倒过来不变
        //利用循环进行倒数
        int sum=0,temp=x;
        while (x!=0){
            int ge = x%10;
            x = x/10;
            sum=sum*10+ge;
        }

        //进行比较
        if (temp==sum){
            System.out.println("true");
        }else {
            System.out.println("false");
        }

3.求商和余数

/*
       需求:给定两个整数,被除数和除数( 都是正数,且不超过int的范围)
        将两数相除,要求不使用乘法、除法和%运算符。
        得到商(减的次数)和余数。
        */

        //定义被除数
        Scanner sc = new Scanner(System.in);
        System.out.println("输入被除数");
        int divided= sc.nextInt();
        //定义除数
        System.out.println("输入被除数");
        int divider= sc.nextInt();

        int count=0;

        //在循环中不断用被除数-除数,只要除数是大于被除数的就一直循环
        while (divided>=divider){
            divided-=divider;
            count++;
        }
        System.out.println("余数为:"+divided);
        System.out.println("商为:"+count);

你可能感兴趣的:(学习,算法)