微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

手把手带你刷好题牛客刷题

ced485cbb11e458d81a746890b32cf3f.gif

作者:月亮嚼成星~

博客主页:月亮嚼成星~的博客主页

专栏:手把手带你刷牛客

工欲善其事必先利其器,给大家介绍一款超牛的斩获大厂offer利器——牛客网

点击免费注册和我一起刷题吧

文章目录

 小球走过路程计算

 求平均数

  判断质数

计算整数位数


 小球走过路程计算

描述

一球从h米高度自由落下,每次落地后反弹回原高度的一半再落下,求它在第n次落地时共经过了多少米?第n次反弹多高?

输入描述:

输入小球的初始高度和落地的次数(先输入小球初始高度再输入反弹次数

输出描述:

输出小球反弹的高度和经过的距离(先输出反弹的高度再输出经过的距离,中间用空格隔开)

 

题解: 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(system.in);
         // 下落的高度和落地的次数
        float h=scanner.nextFloat();
        int n =scanner.nextInt();
        float dis = 0;
        for(int i = 0; i < n; i++){
            dis += h;  //每次加上落下来的距离
            h /= 2; //弹起距离缩短一半
            if(i == n - 1){
                System.out.println(String.format("%.3f", h)+" "+String.format("%.3f", dis));
            }
            dis += h; //弹上去走的距离
        }
    }
}

 求平均数

描述

键盘输入任意多个10000以内正整数(负数代表结束),求出它们的平均数,

输入描述:

任意多个正整数

输出描述:

它们的平均数(平均数为double类型,保留两位小数)

 

题解:

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scan = new Scanner(system.in);
        int count=0;//记录有几个数
        double sum=0.0;//和
        double avg=0.0;//平均数
        //多组输入
        while(scan.hasNext()){
            int num=scan.nextInt();
            if(num<0){
                break;
            }
            count++;
            
            sum+=num;  
            
        }

        avg=sum/count;
        System.out.println(String.format("%.2f",avg));
        

    }
}

  判断质数

描述

请补全预设代码中判断质数的方法

输入描述:

一个大于1的整数

输出描述:

true/false

 

 题解:

方法一:

从1~number之间利用循环进行取模,发现模为0的就不是质数,直接return false,循环完也没有return的是质数,直接return true。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        Scanner scan = new Scanner(system.in);
        int number = scan.nextInt();
        System.out.println(main.isPrimeNumber(number));
    }

    public Boolean isPrimeNumber(int number) {

        for(int i=2;i<number;i++){
            if(number%i==0){
                return false;
            }
        }
        return true;
    }
}

方法二:

从1~number之间进行开方,利用循环进行取模,发现模为0的就不是质数,直接return false,循环完也没有return的是质数,直接return true。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        Scanner scan = new Scanner(system.in);
        int number = scan.nextInt();
        System.out.println(main.isPrimeNumber(number));
    }

    public Boolean isPrimeNumber(int number) {

        for(int i=2;i<=Math.sqrt(number);i++){
            if(number%i==0){
                return false;
            }
        }
        return true;
    }
}

计算整数位数

描述

输入一个整数,计算它的位数。如果输入的整数不大于0则输出这个数

输入描述:

一个整数

输出描述:

整数的位数

题解: 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(system.in);
        int num = scan.nextInt();
        scan.close();
        int count=0;//记录位数
        if(num<=0)
               System.out.println(num);
        while(num>0){
             num/=10;
            count++;
        }
         System.out.println(count);

    }
}

 

 

 “ 本期的分享就到这里了, 记得给博主一个三连哈,你的支持是我创作的最大动力!

原文地址:https://www.jb51.cc/wenti/3284956.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐