201671010456-張瓊 實驗二 詞頻統計軟件項目報

1、需求分析

1.程序要可以讀入英文文本,而且要求此文本不能爲空。
2.程序能容納的英文單詞要在10萬以上。
3.程序要能輸入想查找的一個或者多個英文單詞,而且統計出它出現的次數,而且把它的統計結果以柱狀圖的形式顯示出來。
4.程序運行結果自動顯示該文本的單詞總數和每一個單詞出現的頻率。把單詞數和詞頻數按照字典順序輸出到文件result.txt。
5.當在鍵盤輸入高頻詞的個數k後,進行程序統計功能運行,以後要按照詞頻數降序排列顯示在k以前的每一個單詞的數量和單詞。java

2、功能設計

基本功能:可以讀入單詞而且統計出總詞數,並能統計每一個單次出現的頻率。由於對語言並非特別熟悉,因此最後的統計功能和柱狀圖並無實現。git

3、設計實現

  • 運行環境:windows環境 eclipse軟件github

  • 流程圖

  • 程序設計:定義一個主類main,首先讀取文件,文件的位置要設置成相對位置。而後進行存儲,統計單次出現的頻率及其總詞數。用迭代遍歷關閉流。文件的相對位置存儲中,上傳的步驟須要清楚。首先新建一個文件,在裏面添加進去要掃面統計的文本。

    4、測試運行

    5、代碼片斷展現

    相對路徑的展現windows

    try{
                //使用流的方法讀取文件
                BufferedReader br = new BufferedReader(new FileReader(
                        "result.txt"));
    while(it.hasNext()){
                    Map.Entry<String, Integer> entry = it.next();//獲取map中每個鍵值
                    //輸出結果
                    System.out.println(entry.getKey()+"        "+entry.getValue());
                    br.close();//關閉流
                }
                System.out.println("單詞總數爲:"+count+"個");
    
            }catch(FileNotFoundException e){//
                e.printStackTrace();
            }catch(IOException e){
                e.printStackTrace(); 
            }

    6、總結

    在本次做業中,遇到的困難不少,花費的時間也不少,由於對語言的不熟悉,因此參考了網上的代碼。剛剛拿到這個做業時不會作,翻書複習了java,對我的項目的流程有了必定的掌握。可是柱狀圖的功能並無實現。嚴格意義上來講並無完成本次做業,只實現了最簡單的單詞總數統計和詞頻統計。 裏面涉及到了好多函數的應用,有不少都是不會的,意識到數據結構的重要性,而本身對這部分知識的掌握還僅僅停留在作題上。除此以外,對GitHup的操做流程也熟悉了。數據結構

    7、psp展現

    階段/時長 計劃總共須要的完成時間(min) 實際完成須要的時間(min)
    計劃 10 10
    估計須要時間,並計劃大體工做步驟 10 10
    開發 90 150
    需求分析 15 20
    生成設計文檔 30 20
    設計複審 5 5
    代碼規範 5 5
    具體設計 10 15
    具體編碼 90 240
    代碼複審 10 5
    測試 10 10
    報告 5 3
    測試報告 5 5
    計算報告量 10 10
    總結,並提出改進計劃 20 25

    源代碼地址:https://github.com/ZhangQiong1/program1eclipse

相關文章
相關標籤/搜索