Code:
#include <stdio.h>
#define ASCENDANT 0
#define SUN 2
#define MOON 4
#define MERCURY 6
#define VENUS 8
#define MARS 11
#define JUPITER 14
#define SATURN 16
#define ARIES 0x4172
#define TAURUS 0x5461
#define GEMINI 0x4765
#define CANCER 0x4361
#define LEO 0x4C65
#define VIRGO 0x5669
#define LIBRA 0x4C69
#define SCORPIO 0x5363
#define SAGITTARIUS 0x5361
#define CAPRICORN 0x4370
#define AQUARIUS 0x4171
#define PISCES 0x5069
int main()
{
FILE *text=fopen("typeme.txt","rb");
int pointers[1024]={34};
unsigned int loop, logic;
int text_seek;
unsigned short database[1024][6];
char MBTI[1024][5];
short 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]+MOON]<<8)|RAM[pointers[loop]+1+MOON]);
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]+VENUS]<<8)|RAM[pointers[loop]+1+VENUS]);
database[loop][4]=(unsigned short)((RAM[pointers[loop]+ASCENDANT]<<8)|RAM[pointers[loop]+1+ASCENDANT]);
database[loop][5]=(unsigned short)((RAM[pointers[loop]+SUN]<<8)|RAM[pointers[loop]+1+SUN]);
if(database[loop][4]==LEO&&database[loop][5]==TAURUS)
{
switch(database[loop][0])
{
case ARIES: //ESFP ESTJ ISFJ ISTP
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][1])
{
case ARIES: //ESFP ESTJ
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x50;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x4A;
break;
}
break;
case TAURUS: //ISFJ ISTP
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x50;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x4A;
break;
}
break;
}
break;
case TAURUS: //ESFJ ESTP ISFP ISTJ
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][1])
{
case ARIES: //ISFP ISTJ
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x50;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x4A;
break;
}
break;
case TAURUS: //ESFJ ESTP
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x50;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x4A;
break;
}
break;
}
break;
}
goto there;
}
if(database[loop][4]!=SAGITTARIUS&&database[loop][4]!=PISCES)
{
if(database[loop][4]!=CAPRICORN&&database[loop][4]!=AQUARIUS)
{
goto nope;
}
}
database[loop][1]=(unsigned short)((RAM[pointers[loop]+JUPITER]<<8)|RAM[pointers[loop]+1+JUPITER]);
if(database[loop][4]==CAPRICORN||database[loop][4]==AQUARIUS){database[loop][1]=database[loop][2];}
switch(database[loop][1])
{
case ARIES:
case GEMINI:
case LEO:
case LIBRA:
case SAGITTARIUS:
case AQUARIUS:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
}
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
}
break;
}
break;
case TAURUS:
case CANCER:
case VIRGO:
case SCORPIO:
case CAPRICORN:
case PISCES:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
}
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
}
break;
}
break;
}
goto there;
nope:
switch(database[loop][1])
{
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
}
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x49;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x45;
break;
}
break;
}
break;
}
break;
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][2])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
}
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
switch(database[loop][3])
{
case ARIES:
case TAURUS:
case LEO:
case VIRGO:
case SAGITTARIUS:
case CAPRICORN:
MBTI[loop][1]=0x4E;
MBTI[loop][2]=0x46;
MBTI[loop][3]=0x50;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
case GEMINI:
case CANCER:
case LIBRA:
case SCORPIO:
case AQUARIUS:
case PISCES:
MBTI[loop][1]=0x53;
MBTI[loop][2]=0x54;
MBTI[loop][3]=0x4A;
switch(database[loop][0])
{
case ARIES:
case CANCER:
case LEO:
case SCORPIO:
case SAGITTARIUS:
case PISCES:
MBTI[loop][0]=0x45;
break;
case TAURUS:
case GEMINI:
case VIRGO:
case LIBRA:
case CAPRICORN:
case AQUARIUS:
MBTI[loop][0]=0x49;
break;
}
break;
}
break;
}
break;
}
there:
text_seek=pointers[loop]-29;
if(database[loop][4]==TAURUS||database[loop][4]==LIBRA)
{
if(database[loop][3]==GEMINI)
{
if(strcmp(MBTI[loop],"ENFP")==0){sprintf(MBTI[loop],"ESTJ");}
if(strcmp(MBTI[loop],"ENTJ")==0){sprintf(MBTI[loop],"ESFP");}
if(strcmp(MBTI[loop],"ESFJ")==0){sprintf(MBTI[loop],"ENTP");}
if(strcmp(MBTI[loop],"ESTP")==0){sprintf(MBTI[loop],"ENFJ");}
if(strcmp(MBTI[loop],"INFP")==0){sprintf(MBTI[loop],"ISTJ");}
if(strcmp(MBTI[loop],"INTJ")==0){sprintf(MBTI[loop],"ISFP");}
if(strcmp(MBTI[loop],"ISFJ")==0){sprintf(MBTI[loop],"INTP");}
if(strcmp(MBTI[loop],"ISTP")==0){sprintf(MBTI[loop],"INFJ");}
}
if(database[loop][3]==AQUARIUS)
{
if(strcmp(MBTI[loop],"ENFJ")==0){sprintf(MBTI[loop],"ISTP");}
if(strcmp(MBTI[loop],"ENFP")==0)
{
if(database[loop][0]!=PISCES)
{
sprintf(MBTI[loop],"ISTJ");
}
}
if(strcmp(MBTI[loop],"ESFJ")==0){sprintf(MBTI[loop],"INTP");}
if(strcmp(MBTI[loop],"ESFP")==0)
{
if(database[loop][0]!=PISCES)
{
sprintf(MBTI[loop],"INTJ");
}
}
if(strcmp(MBTI[loop],"INFJ")==0)
{
if(database[loop][0]!=PISCES)
{
sprintf(MBTI[loop],"ESTP");
}
}
if(strcmp(MBTI[loop],"INFP")==0){sprintf(MBTI[loop],"ESTJ");}
if(strcmp(MBTI[loop],"ISFJ")==0)
{
if(database[loop][0]!=PISCES)
{
sprintf(MBTI[loop],"ENTP");
}
}
if(strcmp(MBTI[loop],"ISFP")==0){sprintf(MBTI[loop],"ENTJ");}
}
}
if(database[loop][4]==GEMINI&&database[loop][1]==ARIES)
{
if(strcmp(MBTI[loop],"ENFJ")==0){sprintf(MBTI[loop],"INTJ");}
if(strcmp(MBTI[loop],"ENFP")==0){sprintf(MBTI[loop],"INTP");}
if(strcmp(MBTI[loop],"ESFJ")==0){sprintf(MBTI[loop],"ISTJ");}
if(strcmp(MBTI[loop],"ESFP")==0){sprintf(MBTI[loop],"ISTP");}
if(strcmp(MBTI[loop],"INFJ")==0){sprintf(MBTI[loop],"ENTJ");}
if(strcmp(MBTI[loop],"INFP")==0){sprintf(MBTI[loop],"ENTP");}
if(strcmp(MBTI[loop],"ISFJ")==0){sprintf(MBTI[loop],"ESTJ");}
if(strcmp(MBTI[loop],"ISFP")==0){sprintf(MBTI[loop],"ESTP");}
}
if(database[loop][4]==SCORPIO)
{
database[loop][0]=(unsigned short)((RAM[pointers[loop]+MARS]<<8)|RAM[pointers[loop]+1+MARS]);
if(database[loop][0]==VIRGO)
{
if(strcmp(MBTI[loop],"ENFP")==0){sprintf(MBTI[loop],"ESTJ");}
if(strcmp(MBTI[loop],"ENTJ")==0){sprintf(MBTI[loop],"ESFP");}
if(strcmp(MBTI[loop],"ESFJ")==0){sprintf(MBTI[loop],"ENTP");}
if(strcmp(MBTI[loop],"ESTP")==0){sprintf(MBTI[loop],"ENFJ");}
if(strcmp(MBTI[loop],"INFJ")==0){sprintf(MBTI[loop],"ISTP");}
if(strcmp(MBTI[loop],"INTP")==0){sprintf(MBTI[loop],"ISFJ");}
if(strcmp(MBTI[loop],"ISFP")==0){sprintf(MBTI[loop],"INTJ");}
if(strcmp(MBTI[loop],"ISTJ")==0){sprintf(MBTI[loop],"INFP");}
}
if(database[loop][0]==LIBRA)
{
if(strcmp(MBTI[loop],"ENTJ")==0){sprintf(MBTI[loop],"ESFP");}
if(strcmp(MBTI[loop],"ENTP")==0){sprintf(MBTI[loop],"ESFJ");}
if(strcmp(MBTI[loop],"ESTJ")==0){sprintf(MBTI[loop],"ENFP");}
if(strcmp(MBTI[loop],"ESTP")==0){sprintf(MBTI[loop],"ENFJ");}
if(strcmp(MBTI[loop],"INTJ")==0){sprintf(MBTI[loop],"ISFP");}
if(strcmp(MBTI[loop],"INTP")==0){sprintf(MBTI[loop],"ISFJ");}
if(strcmp(MBTI[loop],"ISTJ")==0){sprintf(MBTI[loop],"INFP");}
if(strcmp(MBTI[loop],"ISTP")==0){sprintf(MBTI[loop],"INFJ");}
}
}
printf("%s ",MBTI[loop]);
while(RAM[text_seek]!=0xD)
{
printf("%c",RAM[text_seek]);
text_seek+=1;
}
printf("\n");
}
free(RAM);
system("pause");
return 0;
}