自然语言理解实验报告Word文档下载推荐.docx
- 文档编号:13228410
- 上传时间:2022-10-08
- 格式:DOCX
- 页数:27
- 大小:550.77KB
自然语言理解实验报告Word文档下载推荐.docx
《自然语言理解实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《自然语言理解实验报告Word文档下载推荐.docx(27页珍藏版)》请在冰豆网上搜索。
实验在WIN7的环境下利用VC++编程。
三.系统设计
(1)算法基本思想
从文本中字符,判断是否为中文字符(全角字符),若为全角字符则根据需要继续读取,即读取两个或三个字。
利用map容器来存储统计结果。
(2)流程图
(3)代码
①字统计
#include<
map>
fstream>
iostream>
string>
usingnamespacestd;
//宋词的统计
voiddisplay_map(map<
string,int>
&
wmap);
ofstreamofs("
c:
\\fenciout2.txt"
);
intmain()
{
cout<
<
"
开始:
endl;
constchar*szInput"
\\Text.txt"
;
ifstreamifs(szInput);
stringszTemp;
stringstr1,str2,str3,str;
chara[10];
//
map<
wmap;
//统计双字的
while(ifs)
{
while(ifs.peek()=='
\n'
)ifs.get();
'
while(!
ifs.peek()&
0x80)ifs.get();
ifs.get(a,3,'
if(a[0]&
0x80)
{
str1=a;
while(ifs.peek()=='
)continue;
while(!
ifs.get(a,3,'
if(a[0]&
0x80)str2=a;
if(str1!
="
,"
&
str1!
。
?
!
str2!
)
{
szTemp=str1+str2;
wmap[szTemp]++;
}
if(ifs.peek()!
='
ifs.peek()!
)ifs.seekg(-2,ios:
:
cur);
}
}
ifs.close();
//三字
ifstreamifs1(szInput);
while(ifs1)
while(ifs1.peek()=='
)ifs1.get();
while(ifs1.peek()=='
ifs1.peek()&
0x80)ifs1.get();
ifs1.get(a,3,'
{
while(ifs1.peek()=='
ifs1.get(a,3,'
elsecontinue;
0x80)str3=a;
str3!
szTemp=str1+str2+str3;
if(ifs1.peek()!
ifs1.peek()!
)ifs1.seekg(-4,ios:
}
ifs1.close();
//单字
ifstreamifs2(szInput);
while(ifs2)
while(ifs2.peek()=='
)ifs2.get();
ifs2.peek()&
0x80)ifs2.get();
ifs2.get(a,3,'
str=a;
}
if(str!
str!
{
szTemp=str;
ifs2.close();
display_map(wmap);
returnfalse;
}
wmap)
intsum=0;
const_iteratormap_it;
for(map_it=wmap.begin();
map_it!
=wmap.end();
map_it++)//统计总数
sum+=map_it->
second;
map_it++)//计算词频
(\"
map_it->
first<
\"
"
second<
)"
cout<
(double)map_it->
second/(sum-1)<
}
ofs<
ofs<
second/sum<
②宋词生成
voidci(inta);
wmapp;
stringszTemp,szTempp;
stringstr1,str2,str;
{
//display_map(wmap);
wmapp[szTemp]++;
//display_map(wmapp);
intas;
while
(1)
请随意输入一个数来创造宋词:
(输入0时退出)"
cin>
>
as;
if(as==0)return0;
ci(as);
endl<
-----------------------------------------------------------------------------"
voidci(inta)
如梦令"
iteratormap_it;
for(inti=0;
i<
3;
i++)
map_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自然语言 理解 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)