Java 實驗一

一學習總結
1.scanner類的基本實現基本輸入的方法:首先須要導入Scanner所在的包,java.util.Scanner。
可使用不一樣的next方法將輸入的文本轉換成不一樣類型的值,如:nextInt,nextBoolean。
還要構造scanner對象,並與system.in關聯,如:Scanner input=new Scanner(System.in);
調用scanner的各類方法完成輸入操做,如:int num=input.nextInt();java

import java.util.Scanner;

public class Test {
    public static void main(String args[]) { 
        String gchar= new String();
        Scanner input = new Scanner(System.in);
        System.out.println("nextLine方式接收:");
        gchar=input.nextLine();
        System.out.println(gchar);
    }     
}
  1. Random類
    實現的隨機算法是僞隨機,也就是有規則的隨機,
    它的隨機方法是設定隨機種子的。
    Math類 此方法就是調用的Random類的nextDouble()方法。
    math的random只能得到一個隨機數
    Math類的random方法使用比較方便,不須要導包、建立對象。
public class RandomNum{
            public static void main(String[] args){
                    Random r1 = new Random(100);//第一個Random對象r1,隨機種子100
                    Random r2 = new Random(100);//第二個Random對象r2,隨機種子100
                    System.out.println("r1產生的值:"+r1.nextInt());
                    System.out.println("r2產生的值:"+r2.nextInt());
                    System.out.println("Math.random產生的值:"+(int)(Math.random()*100));
}
}

3.運行下列程序,結果是什麼?查閱資料,分析爲何。算法

public class Test {
    public static void main(String args[]) { 
        double a = 0.1;
        double b = 0.1;
        double c = 0.1;
        if((a + b + c) == 0.3){
            System.out.println("等於0.3");
        }else {
            System.out.println("不等於0.3");
        }
    }     
}

該程序運行結果爲:不等於0.3
緣由:浮點型數據在進行運算時有極小偏差。
爲了處理精度損失的問題,可使用java.math.BigDecimal類,查閱JDK幫助文檔或教材p378,對上述程序進行修改。dom

import java.math.BigDecimal;
import java.math.MathContext;
public class Test {
       public static void main(String args[]) { 
           BigDecimal a = new BigDecimal(0.1);
           BigDecimal b = new BigDecimal(0.1);
           BigDecimal c = new BigDecimal(0.1);
            if(a.add(b).add(c).round(new MathContext(1)).equals(new BigDecimal("0.3"))){
                System.out.println("等於0.3");
            }else {
                System.out.println("不等於0.3");
            }
        }
    }

以上程序輸出結果爲:等於0.3
4.本次學習要點中其餘須要總結的內容:因人而異,根據本身的學習狀況,記錄難掌握或難理解的內容,以及學有心得的內容。還存在哪些問題,也能夠提出來,對於同窗在博客中提出的問題,你們能夠積極討論,互幫互學。
2、實驗總結
1.看商品猜價格
程序設計思路:
1.產生一個隨機數的函數,給出價格
2.輸入成績
3.使其與產生的隨機數比較(最多10次)
4.在十次內兩數相等,則輸出價格和輸入次數,不然直接輸出價格
2.萬年曆
程序設計思路:
1.判斷是不是閏年
2.寫出每個月天數
3.計算出要輸入的年月與1990年1月1日相距多少天
4.輸出要輸出的月份日曆
3.評分系統
程序設計思路:
1.輸入十位評委分別爲五位選手的評分
2.寫出求每位選手的得分的最大值 最小值 和 平均數的方法
3.爲最終的得分按降序排序
問題:排序方法
解決:可直接用升序排序的方法,而後倒着輸出。
3、代碼託管
函數

相關文章
相關標籤/搜索