一、需求分析###
- 1.程序可读入任意英文文本文件,该文件中英文词数大于等于1个。
- 2.程序需要很壮健,能读取容纳英文原版《哈利波特》10万词以上的文章。
- 3.指定单词词频统计功能:用户可输入从该文本中想要查找词频的一个或任意多个英文单词,运行程序的统计功能可显示对应单词在文本中出现的次数和柱状图。
- 4.高频词统计功能:用户从键盘输入高频词输出的个数k,运行程序统计功能,可按文本中词频数降序显示前k个单词的词频及单词。
- 5.统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt。
二、功能设计###
- 1.输出统计的单词数量,按降序排列输出
- 2.显示对应单词在文本中出现的次数和柱状图
- 3..统计该文本所有单词数量及词频数并输出到文件result.txt
三、测试运行###
-
显示对应单词在文本中出现的次数和柱状图
-
输出统计的单词数量,按降序排列输出
-
统计该文本所有单词数量及词频数并输出到文件result.txt
四、代码展示###
- 显示柱状图
for(int i=0; i<word.length; i++)
{
for(Map.Entry<String,Integer> w : map.entrySet())
{
if(word[i].equals(w.getKey()))
{
System.out.println("单词"+w.getKey() + "出现次数:" + w.getValue());
sum=(float)(w.getValue())/100;
for(int j=0;j<sum;j++)
{
System.out.print("#");//用#来代替柱状图,一个#代表100次
}
System.out.println();
}
}
}
五、总结###
开始看到题目后,首先将JAVA书重新看了一遍,因为太长时间没有使用JAVA进行编程了,看了自己以前的代码想起很多知识点,此次编程问题比较复杂,有些功能没有很好的实现,会继续努力学习,勤加练习JAVA代码的编写,慢慢的将其完善。
七、PSP展示###
任务内容 | 计划完成时间(min) | 实际完成时间 (min) |
---|---|---|
计划 | 15 | 20 |
规划工作步骤 | 2 | 15 |
开发 | 180 | 240 |
需求分析 | 15 | 12 |
生成文档 | 10 | 8 |
设计复审 | 15 | 10 |
代码规范 | 20 | 15 |
具体编码 | 200 | 250 |
代码复审 | 15 | 10 |
测试 | 20 | 30 |
报告 | 15 | 20 |
测试报告 | 5 | 10 |
计算报告量 | 10 | 8 |
事后总结 | 5 | 7 |
点击此处查看项目源代码