Chciałbym napisać program szyfrujący, który zamienia litery na liczby, np. a=1, b=2, c=3... z=23, a między liczbami wypisuje znak '/'. Bez znaków specjalnych, ani angielskich (tj. Q,X). Od razu mówię że jestem POCZĄTKUJĄCY i nie znam poleceń typu "scanf". Napisałem już program, ale jak go włączam to wyskakuje błąd w linijce 14 "expression in new-declarator must have integral or enumeration type". Dla przykładu słowo "informatyka" powinno wyglądać tak: 9/14/6/15/17/14/1/19/22/11/1
Oto kod:
#include <iostream>
#include <conio.h>
#include <string.h>
using namespace std;
int main()
{
cout<<"Podaj tekst do zaszyfrowania:"<<endl;
string litery;
cin>>litery;
int *tab;
tab = new int [litery.size];
int i = 0;
while(litery[i] != NULL)
{if(litery[i] != ' '||litery[i] != ','||litery[i] != '.'||litery[i] != ':'||litery[i] != '?'||
litery[i] != '!'||litery[i] != '@'||litery[i] != '#'||litery[i] != '$'||litery[i] != '%'||
litery[i] != '^'||litery[i] != '&'||litery[i] != '*'||litery[i] != '('||litery[i] != ')'||
litery[i] != '-'||litery[i] != NULL)
{
litery[i] = tab[i];
i++;
}
else{
switch(litery[i])
{
case 'a':
litery[i] = 1;
break;
case 'b':
litery[i] = 2;
break;
case 'c':
litery[i] = 3;
break;
case 'd':
litery[i] = 4;
break;
case 'e':
litery[i] = 5;
break;
case 'f':
litery[i] = 6;
break;
case 'g':
litery[i] = 7;
break;
case 'h':
litery[i] = 8;
break;
case 'i':
litery[i] = 9;
break;
case 'j':
litery[i] = 10;
break;
case 'k':
litery[i] = 11;
break;
case 'l':
litery[i] = 12;
break;
case 'm':
litery[i] = 13;
break;
case 'n':
litery[i] = 14;
break;
case 'o':
litery[i] = 15;
break;
case 'p':
litery[i] = 16;
break;
case 'r':
litery[i] = 17;
break;
case 's':
litery[i] = 18;
break;
case 't':
litery[i] = 19;
break;
case 'u':
litery[i] = 20;
break;
case 'w':
litery[i] = 21;
break;
case 'y':
litery[i] = 22;
break;
case 'z':
litery[i] = 23;
break;
}
litery[i] = tab[i];
i++;
tab[i] = '/';
i++;
}
}
while(tab[i] != NULL)
{
cout<<tab[i];
i++;
}
delete [] tab;
return 0;
}