数组和习题

数组和习题,第1张

数组和习题

1、比较三个数字的大小。

 Scanner input =new Scanner(System.in);
        System.out.println("三个数。");
        int a =input.nextInt();
        int c = input.nextInt();
        int b=input.nextInt();
        if (a 

2、题目:有1对刚刚出生的兔子在第三个月后开始产下一对小兔子。产下的兔子在第三个月开始产下一对兔子......兔子不死的情况下第10个月又多少只。

在分析后发现他们的关系是1,1,2,3,5,8,13........也就是说前俩个数相加等于下一个。我们可以用数组解决。

 public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("计算的月数。");
        int i = input.nextInt();//输入要求的月数。
        int[] x = {1, 1};//定义一个数组勇于i<=2时候输出对应的兔子数量。
        int[] hear = new int[i + 1];//i>2时候开始进行调用tuzi方法计算。
        hear[0] = hear[1] = 1;
        if (i == 1) {//判断i值是否大于2.
            System.out.println("第1个月有" + x[0] + "对兔子。共有" + x[0] * 2 + "只");
        } else if (i == 2) {//判断i值是否大于2.
            System.out.println("第2个月有" + x[1] + "对兔子。共有" + x[0] * 2 + "只");
        } else {//i的值大于2进行调用tuzi方法。
            //下面俩个输出是为什么大于2的同时也能有1月和二月。
            System.out.println("第1个月有" + x[0] + "对兔子。共有" + x[0] * 2 + "只");
            System.out.println("第2个月有" + x[1] + "对兔子。共有" + x[0] * 2 + "只");
            tuzi(i);//调用方法tuzi。
            }
        }

    public static void tuzi(int i) {
        int[] hear = new int[i + 1];//定义数组并且给i+1保证输出月份能输出到i。
        hear[0] = hear[1] = 1;//将数组的前俩个定义为1.
        for (int a = 2; a <= i; a++) {

            hear[a] = hear[a - 1] + hear[a - 2];//后一个数等于前俩个的和.。
                //里面的a+1是保证输出月份与只对应。
                System.out.println("第" + (a+1) + "个月有" + (hear[a]) + "对兔子,共有" + (hear[a] * 2) + "只");
            }


        }
    }

结果:计算的部分并不多。多的是让整个程序输出时候好看。

计算的月数。
10
第1个月有1对兔子。共有2只
第2个月有1对兔子。共有2只
第3个月有2对兔子,共有4只
第4个月有3对兔子,共有6只
第5个月有5对兔子,共有10只
第6个月有8对兔子,共有16只
第7个月有13对兔子,共有26只
第8个月有21对兔子,共有42只
第9个月有34对兔子,共有68只
第10个月有55对兔子,共有110只
第11个月有89对兔子,共有178只

进程已结束,退出代码为 0

3、输出100到200之间的素数(质数)。

public static void main(String[] args) {
        //Scanner input = new Scanner(System.in);
        //System.out.println("计算的月数。");
        int a = 0;
        for (int i=100;i<=200;i++){//循环输出100到200的数字。
         if (i%3==0 ||i%5==0 ||i%2==0 ||i%7==0){//判断条件不能被2,3,5,7整除。

            }else {
                System.out.println(i+"是素数");
                a++;//统计素数输出的次数。
            }
            }
        System.out.println("总的有"+a);
        }

4、输出一个数然后判断他是否是数组内的数。

Scanner input = new Scanner(System.in);
        System.out.println("输入想要查找的数字。");
        int a = input.nextInt();
        int [] shuzu ={1,2,3,5,4,8,9,7,5,45,455,4,5,45,32,23,21};
        int x=shuzu.length;//获取数组长度
        boolean flag =false;//定义布尔数组。
        for (int i=0;i 

5、水仙花数:个,十,百每一位上的数的三次方相加等于这个三位数。

nt a,g,s,b,k,c,num;

        for (a=100;a<1000;a++){
            b=a/100;//提出百位
            s=a%100;
            c=s/10;//提出10位
            g=s%10;//提出各位
            num =b*b*b+c*c*c+g*g*g;
            


            if (a==num){
                System.out.println(a);
            }

        }

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5612659.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存