📋前言📋
红目香薰
🤗2022年最大愿望:【服务百万技术人次】🤗
为了帮助很多想搞算法但又害怕自己搞不定的孩子们,老师付准备了200个入门的逻辑练习题,在这200个逻辑练习题下可以加强你们的基础算法能力,以次为基础当面对正式的算法题目的时候可以得心应手的面对。
题目:
一部儿童电视剧共m分钟,分n集播放,每集大约播放多长时间?(四舍五入)
输入样例:336 8
输出样例:42
package com.item.action;
import java.util.Scanner;
/**
*
* @author hongmuxiangxun 红目香薰 付文龙 老师付 laoshifu
*
*/
public class demo3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int m = sc.nextInt();
int n = sc.nextInt();
sc.close();
double result=m*1.0/n;
System.out.println(String.format("%.2f", result));
}
}
四舍五入知识点:
1、使用精确小数BigDecimal
2、DecimalFormat转换最简便
3、String.format打印最简便
4、使用NumberFormat
package com.item.action;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;
/**
*
* @author hongmuxiangxun 红目香薰 付文龙 老师付 laoshifu
* 保留两位小数第三位如果大于4会进一位(四舍五入)
*/
public class DoubleTest {
static double f = 3.14567;
/**
* 使用精确小数BigDecimal
*/
public static void fun1() {
BigDecimal bg = new BigDecimal(f);
/**
* 参数: newScale - 要返回的 BigDecimal 值的标度。 roundingMode - 要应用的舍入模式。 返回: 一个
* BigDecimal,其标度为指定值,其非标度值可以通过此 BigDecimal 的非标度值乘以或除以十的适当次幂来确定。
*/
double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println("setScale:"+f1);
}
/**
* DecimalFormat转换最简便
*/
public static void fun2() {
DecimalFormat df = new DecimalFormat("#.00");
System.out.println("DecimalFormat:"+df.format(f));
}
/**
* String.format打印最简便
*/
public static void fun3() {
System.out.println("String.format推荐:"+String.format("%.2f", f));
}
/**
* 使用NumberFormat
*/
public static void fun4() {
NumberFormat nf = NumberFormat.getNumberInstance();
/**
* setMaximumFractionDigits(int newValue) 设置数的小数部分所允许的最大位数。
*/
nf.setMaximumFractionDigits(2);
System.out.println("NumberFormat:"+nf.format(f));
}
public static void main(String[] args) {
fun1();
fun2();
fun3();
fun4();
}
}