Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define SUN 2
- #define MERCURY 6
- #define SATURN 16
- #define MARS 11
- #define JUPITER 14
- #define ARIES 0x4172
- #define GEMINI 0x4765
- #define LEO 0x4C65
- #define LIBRA 0x4C69
- #define SAGITTARIUS 0x5361
- #define AQUARIUS 0x4171
- #define TAURUS 0x5461
- #define CANCER 0x4361
- #define VIRGO 0x5669
- #define SCORPIO 0x5363
- #define CAPRICORN 0x4370
- #define PISCES 0x5069
- #define NP 0
- #define SJ 1
- #define NJ 0
- #define SP 1
- int main()
- {
- int saturn_logic[12][2]={{1,0},{1,0},{0,1},{0,1},{1,0},{0,1},{1,0},{1,0},{0,1},{0,1},{1,0},{0,1}};
- FILE *text=fopen("typeme.txt","rb");
- int pointers[1024]={34};
- int loop, logic;
- int text_seek;
- unsigned short database[1024][6];
- char MBTI[1024][4];
- char count=1;
- fseek(text,0,SEEK_END);
- int end=ftell(text);
- fseek(text,0,SEEK_SET);
- unsigned char *RAM=malloc(end);
- fread(RAM,1,end,text);
- fclose(text);
- for(loop=0;loop<end;loop+=1)
- {
- if(RAM[loop]==0xD)
- {
- pointers[count]=36+loop;
- count+=1;
- }
- }
- count-=1;
- for(loop=0;loop<count;loop+=1)
- {
- database[loop][0]=(unsigned short)((RAM[pointers[loop]+SUN]<<8)|RAM[pointers[loop]+1+SUN]);
- database[loop][1]=(unsigned short)((RAM[pointers[loop]+MERCURY]<<8)|RAM[pointers[loop]+1+MERCURY]);
- database[loop][2]=(unsigned short)((RAM[pointers[loop]+SATURN]<<8)|RAM[pointers[loop]+1+SATURN]);
- database[loop][3]=(unsigned short)((RAM[pointers[loop]+MARS]<<8)|RAM[pointers[loop]+1+MARS]);
- database[loop][4]=(unsigned short)((RAM[pointers[loop]+JUPITER]<<8)|RAM[pointers[loop]+1+JUPITER]);
- database[loop][5]=(unsigned short)((RAM[pointers[loop]]<<8)|RAM[pointers[loop]+1]);
- MBTI[loop][0]=0x49; //Introvert
- if(database[loop][3]==ARIES
- ||database[loop][3]==GEMINI
- ||database[loop][3]==LEO
- ||database[loop][3]==LIBRA
- ||database[loop][3]==SAGITTARIUS
- ||database[loop][3]==AQUARIUS)
- {
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- MBTI[loop][0]=0x45; //Extrovert
- }
- if(database[loop][0]==ARIES
- ||database[loop][0]==GEMINI
- ||database[loop][0]==LEO
- ||database[loop][0]==LIBRA
- ||database[loop][0]==SAGITTARIUS
- ||database[loop][0]==AQUARIUS)
- {
- if(database[loop][1]==ARIES
- ||database[loop][1]==GEMINI
- ||database[loop][1]==LEO
- ||database[loop][1]==LIBRA
- ||database[loop][1]==SAGITTARIUS
- ||database[loop][1]==AQUARIUS)
- {
- MBTI[loop][0]=0x45; //Extrovert
- }
- }
- }
- if(database[loop][5]==CANCER){MBTI[loop][0]=0x45;}
- switch(database[loop][2])
- {
- case ARIES:
- logic=saturn_logic[0][1];
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- logic=saturn_logic[0][0];
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==PISCES)
- {
- logic=saturn_logic[0][1];
- }
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SJ;
- }
- switch(logic)
- {
- case NP:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x50; //P
- break;
- case SJ:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x4A; //J
- break;
- }
- break;
- case TAURUS:
- logic=saturn_logic[1][1];
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- logic=saturn_logic[1][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SP;
- }
- switch(logic)
- {
- case NJ:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x4A; //J
- break;
- case SP:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- case GEMINI:
- logic=saturn_logic[2][1];
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- logic=saturn_logic[2][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SJ;
- }
- switch(logic)
- {
- case NP:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x50; //P
- break;
- case SJ:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x4A; //J
- break;
- }
- break;
- case CANCER:
- logic=saturn_logic[3][1];
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- logic=saturn_logic[3][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SP;
- }
- switch(logic)
- {
- case NJ:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x4A; //J
- break;
- case SP:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- case LEO:
- logic=saturn_logic[4][1];
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- logic=saturn_logic[4][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SP;
- }
- switch(logic)
- {
- case NJ:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x4A; //J
- break;
- case SP:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- case VIRGO:
- logic=saturn_logic[5][1];
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- logic=saturn_logic[5][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SJ;
- }
- switch(logic)
- {
- case NP:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x50; //P
- break;
- case SJ:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x4A; //J
- break;
- }
- break;
- case LIBRA:
- logic=saturn_logic[6][1];
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- logic=saturn_logic[6][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SJ;
- }
- switch(logic)
- {
- case NP:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x50; //P
- break;
- case SJ:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x4A; //J
- break;
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==SAGITTARIUS)
- {
- MBTI[loop][3]=0x50; //P
- }
- break;
- case SCORPIO:
- logic=saturn_logic[7][1];
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- logic=saturn_logic[7][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SP;
- }
- switch(logic)
- {
- case NJ:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x4A; //J
- break;
- case SP:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- case SAGITTARIUS:
- logic=saturn_logic[8][1];
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- logic=saturn_logic[8][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SJ;
- }
- if(database[loop][4]==PISCES)
- {
- logic=2;
- }
- switch(logic)
- {
- case NP:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x50; //P
- break;
- case SJ:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x4A; //J
- break;
- case 2:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- case CAPRICORN:
- logic=saturn_logic[9][1];
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- logic=saturn_logic[9][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SJ;
- }
- switch(logic)
- {
- case NP:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x50; //P
- break;
- case SJ:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x4A; //J
- break;
- }
- break;
- case AQUARIUS:
- logic=saturn_logic[10][1];
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- logic=saturn_logic[10][0];
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SP;
- }
- switch(logic)
- {
- case NJ:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x4A; //J
- break;
- case SP:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- case PISCES:
- logic=saturn_logic[11][1];
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- logic=saturn_logic[11][0];
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==ARIES)
- {
- logic=saturn_logic[11][1];
- }
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO)
- {
- logic=SP;
- }
- switch(logic)
- {
- case NJ:
- MBTI[loop][1]=0x4E; //N
- MBTI[loop][3]=0x4A; //J
- break;
- case SP:
- MBTI[loop][1]=0x53; //S
- MBTI[loop][3]=0x50; //P
- break;
- }
- break;
- }
- switch(MBTI[loop][3])
- {
- case 0x4A:
- if(database[loop][4]==SAGITTARIUS||(unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==TAURUS||(unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==GEMINI||(unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==LEO)
- {
- MBTI[loop][1]=0x4E;
- }
- MBTI[loop][2]=0x54; //Thinker
- if(database[loop][3]==TAURUS
- ||database[loop][3]==LEO
- ||database[loop][3]==SCORPIO
- ||database[loop][3]==AQUARIUS)
- {
- MBTI[loop][2]=0x46; //Feeler
- }
- if(database[loop][4]==TAURUS
- ||database[loop][4]==LEO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==AQUARIUS)
- {
- MBTI[loop][2]=0x46; //Feeler
- }
- break;
- case 0x50:
- if(database[loop][4]==SAGITTARIUS||(unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==TAURUS||(unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==GEMINI||(unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==LEO)
- {
- MBTI[loop][1]=0x53;
- }
- MBTI[loop][2]=0x46; //Feeler
- if(database[loop][3]==TAURUS
- ||database[loop][3]==LEO
- ||database[loop][3]==SCORPIO
- ||database[loop][3]==AQUARIUS)
- {
- MBTI[loop][2]=0x54; //Thinker
- }
- if(database[loop][4]==TAURUS
- ||database[loop][4]==LEO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==AQUARIUS)
- {
- MBTI[loop][2]=0x54; //Thinker
- }
- break;
- }
- if((unsigned short)((RAM[pointers[loop]+8]<<8)|RAM[pointers[loop]+9])==VIRGO){goto the_end;}
- if(database[loop][4]==ARIES
- ||database[loop][4]==GEMINI
- ||database[loop][4]==LEO
- ||database[loop][4]==LIBRA
- ||database[loop][4]==SAGITTARIUS
- ||database[loop][4]==AQUARIUS)
- {
- if(database[loop][5]!=ARIES
- &&database[loop][5]!=GEMINI
- &&database[loop][5]!=LEO
- &&database[loop][5]!=LIBRA
- &&database[loop][5]!=SAGITTARIUS
- &&database[loop][5]!=AQUARIUS)
- {
- if(database[loop][5]==TAURUS
- ||database[loop][5]==SCORPIO)
- {
- if(database[loop][2]==TAURUS
- ||database[loop][2]==CANCER
- ||database[loop][2]==VIRGO
- ||database[loop][2]==SCORPIO
- ||database[loop][2]==CAPRICORN
- ||database[loop][2]==PISCES)
- {
- logic=3;
- switch(MBTI[loop][1])
- {
- case 0x4E:
- MBTI[loop][1]=0x53;
- break;
- case 0x53:
- MBTI[loop][1]=0x4E;
- break;
- }
- switch(MBTI[loop][2])
- {
- case 0x46:
- MBTI[loop][2]=0x54;
- break;
- case 0x54:
- MBTI[loop][2]=0x46;
- break;
- }
- switch(MBTI[loop][3])
- {
- case 0x4A:
- MBTI[loop][3]=0x50;
- break;
- case 0x50:
- MBTI[loop][3]=0x4A;
- break;
- }
- }
- }
- }
- }
- if(database[loop][4]==TAURUS
- ||database[loop][4]==CANCER
- ||database[loop][4]==VIRGO
- ||database[loop][4]==SCORPIO
- ||database[loop][4]==CAPRICORN
- ||database[loop][4]==PISCES)
- {
- if(database[loop][5]!=TAURUS
- &&database[loop][5]!=CANCER
- &&database[loop][5]!=VIRGO
- &&database[loop][5]!=SCORPIO
- &&database[loop][5]!=CAPRICORN
- &&database[loop][5]!=PISCES)
- {
- if(database[loop][5]==LEO
- ||database[loop][5]==AQUARIUS)
- {
- if(database[loop][2]==ARIES
- ||database[loop][2]==GEMINI
- ||database[loop][2]==LEO
- ||database[loop][2]==LIBRA
- ||database[loop][2]==SAGITTARIUS
- ||database[loop][2]==AQUARIUS)
- {
- logic=3;
- switch(MBTI[loop][1])
- {
- case 0x4E:
- MBTI[loop][1]=0x53;
- break;
- case 0x53:
- MBTI[loop][1]=0x4E;
- break;
- }
- switch(MBTI[loop][2])
- {
- case 0x46:
- MBTI[loop][2]=0x54;
- break;
- case 0x54:
- MBTI[loop][2]=0x46;
- break;
- }
- switch(MBTI[loop][3])
- {
- case 0x4A:
- MBTI[loop][3]=0x50;
- break;
- case 0x50:
- MBTI[loop][3]=0x4A;
- break;
- }
- }
- }
- }
- }
- if(database[loop][5]==TAURUS&&MBTI[loop][1]==0x4E)
- {
- logic=3;
- switch(MBTI[loop][1])
- {
- case 0x4E:
- MBTI[loop][1]=0x53;
- break;
- case 0x53:
- MBTI[loop][1]=0x4E;
- break;
- }
- switch(MBTI[loop][2])
- {
- case 0x46:
- MBTI[loop][2]=0x54;
- break;
- case 0x54:
- MBTI[loop][2]=0x46;
- break;
- }
- switch(MBTI[loop][3])
- {
- case 0x4A:
- MBTI[loop][3]=0x50;
- break;
- case 0x50:
- MBTI[loop][3]=0x4A;
- break;
- }
- }
- the_end:
- text_seek=pointers[loop]-29;
- printf("%c",MBTI[loop][0]);
- printf("%c",MBTI[loop][1]);
- printf("%c",MBTI[loop][2]);
- printf("%c",MBTI[loop][3]);
- if(logic==3)
- {
- printf("F");
- }
- else
- {
- printf(" ");
- }
- while(RAM[text_seek]!=0xD)
- {
- printf("%c",RAM[text_seek]);
- text_seek+=1;
- }
- printf("\n");
- }
- free(RAM);
- system("pause");
- return 0;
- }
Add Comment
Please, Sign In to add comment