Problem

4/6

实数的输入输出

Theory Click to read/hide

进入

您可以从输入流中输入几个真实变量,并以标准方式将它们写入变量: <前> 双 x = in.nextDouble(); <前> 浮动 y = in.nextFloat(); 第一个数字进入 \(x\) 变量,第二个进入 \(y\) >

输出

Java有几种显示实数的方法。

1)  System.out.printf 用于简单的控制台输出
默认情况下,当使用 printf 时,实数将以最多 6 位小数的精度打印。但是有些情况需要以不同的精度输出。在这种情况下,您必须指定在小数点后分配多少熟悉度。 <前> 双a=0.5; System.out.printf("%f",a); // 在屏幕上 0.500000 System.out.printf("%.2f",a); // 在屏幕上 0.5 System.out.printf("%10.2f",a); // 可以设置分配给数字输出的总位置数 System.out.printf("%.2e",a); // 以 2 位精度的科学格式显示数字 2) DecmialFormat 使用给定模式从数字中获取字符串
DecmialFormat 类允许您控制前导零和尾随零、前缀和后缀、千位分隔符和万位分隔符的输出,但这使代码有点复杂。 <前> 双 a = 123.45; DecimalFormat df = new DecimalFormat("#.###"); 字符串格式 = df.format(a); System.out.println(格式化); //123.45 <正文>

Problem

按顺序完成任务: 
1. 在第 6 行,将 \(y\)  变量的输出格式化为定点格式,使用默认值小数位数
2. 在第 7 行,将变量 \(y\) 的输出格式化为定点格式,以便10中的整数显示位置,小数部分有4个符号
3.在第8行 设置变量\(y\) 的输出,使数字以科学格式显示小数部分有两位数
每个输出语句必须从一个新行输出一个数字
输入 模板 输出 备注
123.45 #.# 123.5 四舍五入显示到小数点后一位
123.45 #.### 123.45 显示不带前导零的整数
123.45 #.0 123.5 四舍五入显示到小数点后一位
123.45 #.000 123.450 显示到第三个字符,末尾有一个无关紧要的零
1
import java.util.Locale;    
2
public class Main {    
3
    public static void main(String[] args) {    
4
        Locale.setDefault(Locale.US);    
5
        double y = 1.0/2 + 1.0/3 + 1.0/4 + 1.0/5;    
6
7
8
9
    }    
10
}    

     

Program check result

To check the solution of the problem, you need to register or log in!