資源簡介
基于C++語言的游程編碼設計,可以實現對輸入數據進行游程編碼解碼
代碼片段和文件信息
#include?
using?namespace?std;?
int?main()?{
int?colorb;?????//分別用語記錄當前灰度值和重復個數,b從1開始計數
int?A[4][4];
int?B[100];????????//編碼后長度不會超過80位
int?ijakm;?
????//b用于保存B[]當前記錄到的位置
cout<<“請依次輸入16個灰度值:“;?????//輸入的灰度值在0-7
????for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
cin>>A[i][j];
}
}cout<<“編碼結果為:“;?
//下面開始游程編碼
i=0;
j=0;
a=0;?
????b=0;
for(;i<4;i++)
{????????
j=0;?????//利用循環找出一行中相鄰相同的灰度值及其重復個數并編碼
color=A[i][0];
while(j<4)?????//只有遇到color值不同或者一行結束時才編碼
if(color==A[i][j])
{
b++;
????j++;
}
else
{
for(k=0;k<3;k++)
{
B[a+2-k]=color%2;
color=color/2;
}
b--;
for(k=0;k<2;k++)
- 上一篇:C++實現SAMPLE語言的語法分析器
- 下一篇:C++自適應編碼
評論
共有 條評論