106.03.13 Java作業二記錄

題目是解一元二次方程式,用公式解並不難
但有些語法我小卡就來記錄個

貼題目應該不會被吉吧@@


















混和輸入
意思是要輸入數字跟字串,中間用換行隔開時會有一行垃圾(?)
解法一
多吃一行(寫在數字跟字串中間),不過有點不美觀OuO
String garbage = scanner.next();
解法二
使用外覆類別去轉換當成字串輸入的數字
double c = Double.valueOf(scanner.nextLine());//Double為外覆類別
String s = scanner.nextLine();

開根號
sqrt()是java.lang.Math的static方法,所以不用new物件(是不知道可不可以new啦XDD)
double dd = Math.sqrt(d);

格式輸出
其實java一樣有printf(),不過我在用時噴了error
長這樣:f != java.lang.String
結果發現numberFormat.format(dd)其實是字串不是浮點數,所以應該用%s而不是%f
System.out.printf("%s\n%s", numberFormat.format(x1), numberFormat.format(x2));

另外學到兩個新名詞:
descending order:降序
ascending order:升序

參考資料:
Java 快速導覽 - Math 類別的 static sqrt()
Java 快速導覽 - System 類別屬性 out 的 printf()
java.util.IllegalFormatConversionException: f != java.lang.String Error

沒有留言:

張貼留言

^ Top