Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- using namespace std;
- char* decode(const char text[]);
- char* encode(const char text[]);
- void detect(const char text[]);
- int main(int argc,char *argv[])
- {
- detect("argv[1]");
- cout<<endl;
- return 0;
- }
- void detect(const char text[])
- {
- int i=strlen(text);
- int j=0;
- char text2[i];
- char *pText2=&text2[0];
- for(j=0;j<i;j++)
- {
- if(!(isspace(text[j])))
- {
- *pText2=text[j];
- pText2++;
- }
- }
- *pText2='\0';
- if((i%8)==0)
- {
- for(j=0;j<i;j++)
- {
- if((text[j]!='0')&&(text[j]!='1'))
- {
- encode(text);
- return;
- }
- }
- decode(text2);
- return;
- }
- encode(text);
- }
- char* encode(const char text[])
- {
- int textLen=strlen(text);
- char binaryText[1000];
- char *bPtr=NULL;
- for(int x=0;x<textLen;x++)
- {
- char *binaryPart=new char[8];
- bPtr=&binaryPart[0];
- int ascii=text[x];
- while(ascii != 1)
- {
- if(ascii % 2 == 0)
- {
- *bPtr = '0';
- }
- else if(ascii % 2 == 1)
- {
- *bPtr = '1';
- }
- ascii /= 2;
- bPtr++;
- }
- if(ascii == 1)
- {
- *bPtr= '1';
- bPtr++;
- }
- while(8>bPtr-&binaryPart[0])
- {
- *bPtr='0';
- bPtr++;
- }
- for(int i=0;i<8;i++)
- {
- binaryText[(x*9)+i]=binaryPart[7-i];
- binaryText[(x*9)+i+1]=' ';
- binaryText[(x*9)+i+2]='\0';
- }
- delete[] binaryPart;
- }
- cout<< binaryText;
- }
- char* decode(const char text[])
- {
- }
Add Comment
Please, Sign In to add comment