当前位置: 首页 > news >正文

【牛客刷题】每日一练——Java语法的强化

hello,进来的小伙伴,你们好呐!

系列专栏:【牛客刷题】

作者简介:一名大二即将大三的科班小白,我很平凡,学会努力!

给大家推荐一个超级好用的刷题网站——牛客网!

点击链接注册,开启刷题之路!

一、四舍五入

描述

定义一个int类型变量i,i为由浮点数变量d四舍五入后的整数类型,请将转换后的i进行输出

输入描述:

用户随机输入的浮点数

输出描述:

四舍五入之后的整数(小数点后一位>=5则进一,否则舍去)

示例1

输入:

14.99

输出:

15

代码实现:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double d= scanner.nextDouble();
        int i = (int) d;
        double num = d-i;
        if(num>=0.50){
            System.out.println(i+1);
        }
        else{
            System.out.println(i);
        }
    }

二、邮箱验证

描述

请根据给出的正则表达式来验证邮箱格式是否合法,如果用户输入的格式合法则输出「邮箱格式合法」,否则输出「邮箱格式不合法」。

输入描述:

任意字符串

输出描述:

根据输入的邮箱格式判断其合法于不合法,若输入字符串符合邮箱格式则输出邮箱格式合法,否则输出邮箱格式不合法

示例1

输入:

123123@nowcoder.com

输出:

邮箱格式合法

代码实现:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        String str = scanner.next();
        String emailMatcher="[a-zA-Z0-9]+@[a-zA-Z0-9]+\\.[a-zA-Z0-9]+";
        if(str.matches(emailMatcher)){
            System.out.println("邮箱格式合法");
        }else{
            System.out.println("邮箱格式不合法");
        }
    }
}

三、数列求和

描述

有数列为:9,99,999,...,9999999999。要求使用程序计算此数列的和,并在控制台输出结果。(请尝试使用循环的方式生成这个数列并同时在循环中求和)

输入描述:

输出描述:

将该数列的和直接输出

代码实现:

public class Main {
    public static void main(String[] args) {
        long count = 1,sum=0;
        for(int i=1;i<=10;i++){
            count*=10;
            sum+=(count-1);
        }
        System.out.println(sum);
    }
}

四、最小公倍数

描述

编写一个方法,该方法的返回值是两个不大于100的正整数的最小公倍数

输入描述:

两个int类型变量作为方法的参数

输出描述:

int类型的变量,值为两个数的最小公倍数

示例1

输入:

3 7

输出:

21

代码实现:

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner console = new Scanner(System.in);
        int m = console.nextInt();
        int n = console.nextInt();
        int result = getCM(m, n);
        System.out.println(result);
    }
// 辗转相除找最大公约数,然后x * y / 最大公约数就是最小公倍数
    public static int getCM(int m, int n){
        return m*n/fun(m,n);
    }
    public static int fun(int m,int n){
        if(n==0){
            return m;
        }else{
            return fun(n,m%n);
        }
    }
}

五、小球走过路程计算

描述

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

输入描述:

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

输出描述:

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

示例1

输入:

100 3

输出:

12.500 250.000

解题思路:相信这题大家问题应该可以读懂,我用一张图解大家就可以明白了。关键就是第n次落地就是第n-1次弹起,想明白这个就可以看懂代码了。

 代码实现:

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 sum = 0;
        for(int i = 0;i<n;i++){
            sum+= h;
            h/=2;
            if(i== n-1){
                System.out.println(String.format("%.3f",h)+" "+String.format("%.3f",sum));
            }
            sum+=h;
        }
    }
}

相关文章:

  • 【Java】基础语法 | OOP用法 | 集合框架
  • 架构分析:「转转云平台」的 Kubernetes 实践
  • RHCE之搭建DNS服务器
  • 【进程 进程表】页表通常存在PCB中
  • 关于AbstractQueuedSynchronizer(JDK1.8)的一点理解.
  • 猿创征文 |【算法入门必刷】数据结构-栈(三)
  • 学习编程的第二十五天
  • Java 中 int 和 Integer 的区别,为什么要有包装类?
  • Day42-HttpServletRequest、Cookie
  • School StartsFirstProject~UnityVR(HTCVive设备开发)
  • 分库分表与sharding-jdbc
  • 猿创征文| Unity~DOTween相关使用①
  • 猿创征文|vue组件之间的传值
  • Git --》Git的安装与配置
  • Git --》Git常用命令使用
  • 【Amaple教程】5. 插件
  • Android框架之Volley
  • Apache Pulsar 2.1 重磅发布
  • Java Agent 学习笔记
  • JavaWeb(学习笔记二)
  • java取消线程实例
  • log4j2输出到kafka
  • nfs客户端进程变D,延伸linux的lock
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • python docx文档转html页面
  • Python利用正则抓取网页内容保存到本地
  • Spring Boot MyBatis配置多种数据库
  • Vue2.0 实现互斥
  • 产品三维模型在线预览
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 如何解决微信端直接跳WAP端
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 责任链模式的两种实现
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • #QT(TCP网络编程-服务端)
  • #微信小程序(布局、渲染层基础知识)
  • (10)ATF MMU转换表
  • (function(){})()的分步解析
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (附源码)小程序 交通违法举报系统 毕业设计 242045
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (四)Android布局类型(线性布局LinearLayout)
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • ***检测工具之RKHunter AIDE
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET 常见的偏门问题
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .NET开源项目介绍及资源推荐:数据持久层
  • .sh 的运行