首页 > 其他 > 详细

201671010456-张琼 实验二 词频统计软件项目报

时间:2019-03-19 20:35:30      阅读:138      评论:0      收藏:0      [点我收藏+]

一、需求分析

1.程序要能够读入英文文本,并且要求此文本不能为空。
2.程序能容纳的英文单词要在10万以上。
3.程序要能输入想查找的一个或者多个英文单词,并且统计出它出现的次数,并且把它的统计结果以柱状图的形式显示出来。
4.程序运行结果自动显示该文本的单词总数和每个单词出现的频率。把单词数和词频数按照字典顺序输出到文件result.txt。
5.当在键盘输入高频词的个数k后,进行程序统计功能运行,之后要按照词频数降序排列显示在k之前的每个单词的数量和单词。

二、功能设计

基本功能:能够读入单词并且统计出总词数,并能统计每个单次出现的频率。因为对语言并不是特别熟悉,所以最后的统计功能和柱状图并没有实现。

三、设计实现

  • 运行环境:windows环境 eclipse软件

  • 流程图
    技术分享图片
  • 程序设计:定义一个主类main,首先读取文件,文件的位置要设置成相对位置。然后进行存储,统计单次出现的频率及其总词数。用迭代遍历关闭流。文件的相对位置存储中,上传的步骤需要清楚。首先新建一个文件,在里面添加进去要扫面统计的文本。

    四、测试运行

    技术分享图片

    五、代码片段展示

    相对路径的展示

    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(); 
            }

    六、总结

    在本次作业中,遇到的困难很多,花费的时间也很多,因为对语言的不熟悉,所以参考了网上的代码。刚刚拿到这个作业时不会做,翻书复习了java,对个人项目的流程有了一定的掌握。但是柱状图的功能并没有实现。严格意义上来说并没有完成本次作业,只实现了最简单的单词总数统计和词频统计。 里面涉及到了好多函数的应用,有很多都是不会的,意识到数据结构的重要性,而自己对这部分知识的掌握还仅仅停留在做题上。除此之外,对GitHup的操作流程也熟悉了。

    七、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/program1

    201671010456-张琼 实验二 词频统计软件项目报

    原文:https://www.cnblogs.com/zhangqiong/p/10544766.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!