首页 > 其他分享 >十道循环题目

十道循环题目

时间:2023-09-15 17:33:10浏览次数:34  
标签:题目 int 兔子 month 十道 循环 println 100 public

1.输出所有满足下列条件的四位数.
条件:个位数字加百位数字等于千位数字加上十位数字,且该该数为奇数.
2.求1-100之间所有7的倍数的和,并在页面输出 7+14+21+...+... =
3.通过for循环实现百钱买百鸡的问题:
公鸡5元每只,母鸡3元每只,小鸡3只1元,100元买一百只鸡多少种办法?
4.鸡兔同笼35个头94只脚, 鸡有多少只兔有多少只?
5.在控制台输出99乘法表
6.公园里有一只猴子和一堆桃子 猴子每天吃掉桃子总数的一半,把剩下一半中扔掉一个坏的 到第七天的时候,猴子睁开眼发现只剩下一个桃子
问公园里刚开始有多少个桃子?
7.输出1~100之间的质数
8.一个小球从100米空中落下,每次反弹一半高度,请问第10次反弹的高度是多少?小球总共经过多少米
9.已知2019年是猪年,请在控制台输出从1949年到2019年中所有是猪年的年份。
10.有一个很有名的数学逻辑题叫做不死神兔问题,有一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第十二个月的兔子对数为多少?

public class Test {
    public static void main(String[] args) {
        // test02();
        // test03();
        // test04();
        // test05();
        //
        //System.out.println(test06(1));

        //test07();
        
        // test09(100,10);

        // test10();
        // System.out.println(test11(12));
        // System.out.println(test12(12));
    }

    //输出所有满足下列条件的四位数.
    //条件:个位数字加百位数字等于千位数字加上十位数字,且该该数为奇数.
    public static void test01(){
        for(int i = 1001; i<10000; i+=2){
            //个位 i%10  十位 i/10 % 10  
            if( (i % 10 + (i/100 % 10)) == (i/1000 % 10)+(i/10 %10) ){
                System.out.println(i);
            }
        }
    }

    //求1-100之间所有7的倍数的和,并在页面输出 7+14+21+...+... =
    public static void test02(){
        String str = "7";
        int sum = 0;
        for(int i = 8; i<=100; i++){
            if(i % 7 == 0){
                str += "+"+i;
                sum += i;
            }
        }
        System.out.println(str+"="+sum);
    }
    //通过for循环实现百钱买百鸡的问题:
    //公鸡5元每只,母鸡3元每只,小鸡3只1元,100元买一百只鸡多少种办法?
    // i公鸡, j母鸡, k小鸡
    public static void test03(){
        int count = 0;
        for(int i = 0; i <= 20; i++){
            for(int j = 0; j <= 33;j++){
                for(int k = 0; k <= 100; k++){
                    //(a+b+c == 100 && 5*a + 3*b + 1/3*c == 100
                    if(i + j+ k == 100 &&  15 * i + 9 * j +  k  == 300){
                        count++;
                        System.out.println("公鸡"+i+","+"母鸡"+j+"小鸡"+k);
                    }
                }
            }
        }
        System.out.println("一共有"+count+"种方法");
    }
    //鸡兔同笼35个头94只脚, 鸡有多少只兔有多少只?
    public static void test04(){
        for(int i = 0; i<=35; i++){
            for(int j = 0; j<=35; j++){
                if(i+j == 35 && 2*i + 4*j == 94){
                    System.out.println("鸡有"+i+"只"+","+"兔子有"+j+"只");
                }
            }
        }
    }

    //5.在控制台输出99乘法表
    public static void test05(){
        String str = "";
        for(int i = 1; i <= 9; i++){
            for(int j = 1; j <= i; j++){
                str += i+"*"+j+"="+i*j+"\t";
            }
            str+="\n";
        }
        System.out.println(str);
    }

    //6公园里有一只猴子和一堆桃子 猴子每天吃掉桃子总数的一半,把剩下一半中扔掉一个坏的 到第七天的时候,猴子睁开眼发现只剩下一个桃子
    //问公园里刚开始有多少个桃子?
    public static int test06(int day){
        if(day == 7){
            return 1;
        }else if(day >= 1 && day <= 6){
            return (test06(day+1)+1) * 2;
        }else{
            return -1;
        }
    }

    //7输出1~100之间的质数
    public static void test07(){
        for(int i = 2; i<=100 ; i++){
            int j = 0;
            for(j = 2; j < i; j++){
                if( i % j == 0){
                    break;
                }
            }
           if(j == i){
                System.out.println(i);
            }
        }
    }
    //7输出1~100之间的质数
    public static void test08(){
        for(int i = 2; i <= 100; i++){
            boolean flag = true;
            for(int j = 2; j <= i; j++){
                if(i % j == 0){
                    flag = false;
                    break;
                }
            }
            if(flag){
                System.out.println(i);
            }
        }
    }
    //8 一个小球从100米空中落下,每次反弹一半高度,
    //请问第10次反弹的高度是多少?小球总共经过多少米
    public static void test09(float high,int numTimes){
        float len = 100;
        for(int i = 1; i <= numTimes; i++){
            len += high;
            high = high/2;
        }
        System.out.println(len);
        System.out.println(high);
    }
    //已知2019年是猪年,请在控制台输出从1949年到2019年中所有是猪年的年份。
    public static void test10(){
        for(int i = 2019; i >= 1949; i -= 12){
            System.out.println("猪年年份有:"+i);
        };
    }

    //有一个很有名的数学逻辑题叫做不死神兔问题,
    //有一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,
    //假如兔子都不死,问第十二个月的兔子对数为多少?
    
    //递归 
    public static int test11(int month){
        if(month == 1 || month ==2){
            return 1;
        }else{
            return test11(month-1) + test11(month - 2);
        }
    }

    //非递归   三月份兔子 = 上个二月份兔子+三月本身的兔子    二月份兔子 = 上个一月份兔子   一月份兔子 = 上个三月份兔子   
    public static int test12(int month){
        int yiyue = 1;
        int eryue = 0;
        int sanyue = 0;
        
        for(int i = 2; i <= month; i++){
            sanyue += eryue;
            eryue = yiyue;
            yiyue = sanyue;
        };

        return yiyue+eryue+sanyue;
    }
}

标签:题目,int,兔子,month,十道,循环,println,100,public
From: https://www.cnblogs.com/RepublicLine/p/17705572.html

相关文章

  • CTF题目-must use [ctf-Web-Broswer]
    一道CTF题目,请求后页面如下: 这里根据提示需要我们使用ctf-Web-Broswer,这个很明显是更改User-Agent的一个套路python简单写下importrequestsurl='http://1.1.20.100:8001/'headers={"User-Agent":"ctf-Web-Broswer",}res=requests.get(url,headers=headers)print(......
  • CTF题目-message board
    遇到了一道CTF题目,页面如下通过目录扫描可以发现www.tar,一看就知道是网站备份文件,接下来套路估计就是代码审计 打开可以看到2个php文件 看过一遍代码,再结合题目的web页面,就会大概清楚这是一个提交留言的系统,会涉及到数据库的更新和查询操作,数据库查询的语句已经写死......
  • Java学习_009_for循环
    循环结构:组成:1.初始化语句:用于表示循环开启时的起始状态,简单说就是循环开始的时候是什么样子;2.条件判断语句:用于表示循环反复执行的条件,简单说就是判断循环是否能够一直执行下去;3.循环体语句:用于表示循环反复执行的内容,简单说就是循环反复执行的事情;4.条件控制语句:用于表示循......
  • 不再困惑!Java中for循环的全面解析
    Java中的for循环是一种常用的循环结构,用于重复执行一段代码。它的基本语法如下:for(初始化语句;条件表达式;更新语句){//循环体代码}其中,初始化语句用于初始化循环控制变量;条件表达式用于判断是否继续循环;更新语句用于更新循环控制变量的值。具体来说,for循环的执行过程如下......
  • 剑指Offer面试题3题目二:不修改数组找出重复的数字
    一、题目在一个长度为n+1的数组里的所有数字都在1~n的范围内,所以数组中至少有一个数字是重复的。请找出数组中任意一个重复的数字,但不能修改输入的数组。例如,如果输入长度为8的数组{2,3,5,4,3,2,6,7},那么对应的输出是重复的数字2或3。输入参数:一个整数数组numbers,......
  • 匿名函数和常见是内置函数(配合匿名使用)和for循环的原理,异常的捕获
    匿名函数和常见是内置函数(配合匿名使用)和for循环的原理,异常的捕获匿名函数常见的内置函数(配合匿名函数使用)可迭代对象迭代器对象for循环内部原理异常捕获匿名函数匿名函数不需要显示地定义函数名,使用【lambda+参数+表达式】的方式lambda[arg1[,arg2,...argN]......
  • 匿名函数、常见的内置函数、可迭代对象、迭代器对象、for循环的内部原理、异常捕获
    匿名函数注意:匿名函数一般不单独使用匿名函数其实就是没有名字的函数关键字lambda#匿名函数也是必须加括号才能使用匿名函数的语法格式:lambda形参:返回值defindex(形参):返回值''''''''''''res=lambdax,y:x+yprint(res(1,2))!常见内......
  • 解密滴滴面试:foreach为什么在性能上领先for循环?
    正文大家好,我是小米!今天我要和大家分享一个有关Java编程的热门话题:为什么在Java中使用foreach循环比传统的for循环更快?这个问题在Java开发者社区中一直备受关注,我会尽力为大家解答这个问题,并提供一些有趣的示例来帮助大家更好地理解。背景在Java中,我们经常需要遍历数组或集合来处理......
  • javascript事件循环机制及面试题详解
    javascript事件循环机制及面试题详解 javascript是单线程执行的程序,也就是它只有一条主线,所有的程序都是逐行“排队”执行,在这种情况下可能存在一些问题,比如说setTimeout、ajax等待执行的时间较长,就会阻塞后续代码的执行,使得整个程序执行的耗时非常久,那么为了应对这样一个问......
  • springboot解决循环依赖
    importorg.springframework.context.annotation.Lazy;@ServicepublicclassCService{privateAServiceaService;//去掉@Autowired//采用构造器方式,加入Lazy注解publicCService(@LazyAServiceaService){this.aService=aService;......