www.pudn.com > viterbi.rar > viterbi.cpp


#include 
#include 
#include 
#include 
#include 
#include 
 
#include"viterbi.h" 
 
//录入音序表 
void yinxu(){ 
	yinxubiao[0].pinyin="wo";yinxubiao[0].count=4; 
	yinxubiao[0].yinxudui[0]=53966; 
	yinxubiao[0].yinxudui[1]=54734; 
	yinxubiao[0].yinxudui[2]=54478; 
	yinxubiao[0].yinxudui[3]=53710; 
	yinxubiao[1].pinyin="ai";yinxubiao[1].count=4; 
	yinxubiao[1].yinxudui[0]=44720; 
	yinxubiao[1].yinxudui[1]=42160; 
	yinxubiao[1].yinxudui[2]=43952; 
	yinxubiao[1].yinxudui[3]=43440; 
	yinxubiao[2].pinyin="kan";yinxubiao[2].count=4; 
	yinxubiao[2].yinxudui[0]=46271; 
	yinxubiao[2].yinxudui[1]=46015; 
	yinxubiao[2].yinxudui[2]=44991; 
	yinxubiao[2].yinxudui[3]=45247; 
	yinxubiao[3].pinyin="shu";yinxubiao[3].count=4; 
	yinxubiao[3].yinxudui[0]=59850; 
	yinxubiao[3].yinxudui[1]=63434; 
	yinxubiao[3].yinxudui[2]=64970; 
	yinxubiao[3].yinxudui[3]=60618; 
	yinxubiao[4].pinyin="yun";yinxubiao[4].count=4; 
	yinxubiao[4].yinxudui[0]=52180; 
	yinxubiao[4].yinxudui[1]=50900; 
	yinxubiao[4].yinxudui[2]=51924; 
	yinxubiao[4].yinxudui[3]=52948; 
	yinxubiao[5].pinyin="dong";yinxubiao[5].count=4; 
	yinxubiao[5].yinxudui[0]=44982; 
	yinxubiao[5].yinxudui[1]=44726; 
	yinxubiao[5].yinxudui[2]=43958; 
	yinxubiao[5].yinxudui[3]=46262; 
	yinxubiao[6].pinyin="yao";yinxubiao[6].count=4; 
	yinxubiao[6].yinxudui[0]=41426; 
	yinxubiao[6].yinxudui[1]=43730; 
	yinxubiao[6].yinxudui[2]=43474; 
	yinxubiao[6].yinxudui[3]=42962; 
} 
 
//求最小转移概率和 
void function(int i,int j){ 
	//默认第一个转移概率最大 
	node[i][j].sum=zhuanyibiao[node[i][j].innercode].zhuanyidui[0].zhuanyigailu+node[i-1][0].sum; 
	//比较其他,求最小转移概率 
	for(int k=1;k0)cout<0)cout<>total; 
	cout<>daichabiao[i].pinyin; 
		cout<=0;i--){ 
		result[i]=node[i][c].innercode; 
		c=node[i][c].parentcolumn; 
	} 
 
	//输出结果 
	cout<<"结果是:"<>8; 
		  l=result[i]&0x0000ff; 
		  putchar(l); 
		  putchar(y); 
	   } 
 
	cout<>m; 
	if(m==1){ 
		FILE *fp; 
		if((fp=fopen("reslut.txt","w"))==NULL){ 
			cout<<"file cannot be opened!!!"<>n; 
	} 
 
	//----------------结束语---------------------- 
	cout<