201671010448 词频统计软件项目报告

实验二 词频统计软件项目报告

需求分析

  • 使用JAVA编程语言实现以下基本功能
  • 1.程序可读入任意英文文本文件,该文件中英文词数大于等于1个。
  • 2.程序需要很壮健,能读取容纳英文原版《哈利波特》10万词以上的文章。
  • 3.指定单词词频统计功能:用户可输入从该文本中想要查找词频的一个或任意多个英文单词,运行程序的统计功能可显示对应单词在文本中出现的次数和柱状图。
  • 4.高频词统计功能:用户从键盘输入高频词输出的个数k,运行程序统计功能,可按文本中词频数降序显示前k个单词的词频及单词。
  • 5.统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt。

    功能设计

    基本功能:

  • 用户可输入任意英文文本
  • 容量10万词以上
  • 运行程序的统计功能可显示对应单词在文本中出现的次数和柱状图

    扩展功能:

  • 高频词统计功能:用户从键盘输入高频词输出的个数k,运行程序统计功能,可按文本中词频数降序显示前k个单词的词频及单词。
  • 统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt。

    设计实现

  • 主程序使用循环体将读入的文章进行读取
  • 此外用 String[] wordsArr1 = readLine.split("[^a-zA-Z]"); 过滤出文章中的字母,并除去长度为0的行
  • 用 String[] wordsArr1 = readLine.split("[^a-zA-Z]"); 方法存储单词的计数信息
  • 最后实现降序排列

    测试运行

  • 运行结果如图所示:

代码片段

  • 输入英文文本
  • 过滤出字母

  • 进行排序

总结:

  • 此次试验因为对语言的学习不够,程序借鉴网络,对程序进行了研读和理解。存在的很多不足在以后的学习中,补充自己在语言方面的不足,课余时间补充java,c等基本语言。

    PSP展示:

    PSP2.1 任务内容 计划共完成需要的时间(min) 实际完成需要的时间(min)
    Planning 计划 10 8
    Estimate 估计这个任务需要多少时间,并规划大致工作步骤 60 40
    Development 开发 10 10
    Analysis 需求分析 (包括学习新技术) 6 5
    Design Spec 生成设计文档 20 15
    Design Review 设计复审 (和同学一起审核设计文档) 6 6
    Coding Standard 代码规范 (为目前的开发制定合适的规范) 20 20
    Design 具体设计 20 30
    Coding 具体编码 10 8
    Code Review 代码复审 5 5
    Test 测试(自我测试,修改代码,提交修改) 5 5
    Reporting 报告15 12
    Test Report 测试报告 8 8
    Size Measurement 计算工作量 8 6
    Postmortem & Process Improvement Plan 事后总结 ,并提出过程改进计划 10 10

    源码查看

  • 点击链接:(https://github.com/healer-devil/yuandaima/blob/master/src/danci.java)

猜你喜欢

转载自www.cnblogs.com/healerdevil/p/10560958.html