PDA

View Full Version : الگوریتم هافمن به زبان سی پلاس پلاس



assemaneh
سه شنبه 12 آذر 1392, 20:53 عصر
سلام
این برنامه رو با سی پلاس پلاس نوشتم اما همش ارور میگیره.نمیفهمم مشکلش چیه؟؟
:ناراحت:


#include <iostream>
#include <string>
string Huffman(char letter);
string Huffman_word(string word);
string Huffman_code(int code);
string word;
int main()
{
string word;
cout<<"Please Enter Your String: ";
getline(cin,word);
cout<<Huffman_word(word);



}

string Huffman_word(string word)
{//This function takes a word and returns its Huffman encoding
string Huffman_code;
int n = word.length();
for(int i = 0; i<n; i++)
{
Huffman_code.append(Huffman(word[i]));
}
return Huffman_code;
}
////////////ENCODE///////////////
String Huffman(char letter)
{//this function takes a letter and produces it's corresponding Huffman encoding
switch(letter){
case 'a':
case 'A':
return "00";
break;
case 'e':
case 'E':
return "000";
break;
case 'f':
case 'F':
return "1101";
break;
case 'h':
case 'H':
return "1011";
break;
case 'i':
case 'I':
return "1000";
break;
case 'm':
case 'M':
return "0111";
break;
case 'n':
case 'N':
return "0010";
break;
case 's':
case 'S':
return "1011";
break;
case 't':
case 'T':
return "0110";
break;
case 'l':
case 'L':
return "11001";
break;
case 'o':
case 'O':
return "00110";
break;
case 'p':
case 'P':
return "10011";
break;
case 'r':
case 'R':
return "11000";
break;
case 'u':
case 'U':
return "00111";
break;
case 'x':
case 'X':
return "10010";
break;
case ' ':
return "111";
break;
{
}
}

ali chegini
چهارشنبه 13 آذر 1392, 00:02 صبح
سلام لطفا error قرار بدید.

hadi0x7c7
چهارشنبه 13 آذر 1392, 11:59 صبح
کل برنامه رو بزارید. الگوریتم هافمن رو چه جوری پیاده سازی کردید؟ چه جوری کد ها رو نگه میدارید؟

assemaneh
چهارشنبه 13 آذر 1392, 12:11 عصر
توروخدا اگه ميشه زودت جواب بديد لطفا
3:declaration syntax error
4:variable 'string' is initialized more than once
9:state ment missing;
11: function 'getline' should have a prototype
11:un difned symbol 'word'
12:function 'huffman_word' should have a prototype
13:function should return a value