Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<string.h>
- #include<math.h>
- #include<conio.h>
- #include<windows.h>
- #define p printf
- #define s scanf
- #include<stdlib.h>
- COORD coord={0,0};
- void gotoxy(int x,int y)
- {
- coord.X=x;
- coord.Y=y;
- SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
- }
- main()
- {
- char username[20];
- char password[20];
- int i=2;
- int d;
- char ch;
- do
- {
- system("COLOR F0");
- gotoxy(10,2);p("welcome please enter username and password");
- gotoxy(10,3);printf("Enter User: ");
- scanf("%s",&username);
- gotoxy(10,4);printf("Enter Password: ");
- s("%s",password);
- if(strcmp(username, "elpost")==0)
- {
- if(strcmp(password, "epf")==0)
- {
- int choice;
- system("cls");
- gotoxy(20,2);printf("Welcome To Code Converter\n");
- ulit:
- gotoxy(20,2);p("**********CHOICES**********");
- gotoxy(20,3);p("1. Binary To Octal\n");
- gotoxy(20,4);p("2. Binary to Decimal\n");
- gotoxy(20,5);p("3. Binary to Hexadecimal\n");
- gotoxy(20,6);p("4. Octal to Binary\n");
- gotoxy(20,7);p("5. Octal to Decimal\n");
- gotoxy(20,8);p("6. Octal to Hexadecimal\n");
- gotoxy(20,9);p("7. Decimal to Binary\n");
- gotoxy(20,10);p("8. Decimal to Octal\n");
- gotoxy(20,11);p("9. Decimal to Hexadecimal\n");
- gotoxy(20,12);p("10. Hexadecimal to Binary\n");
- gotoxy(20,13);p("11. Hexadecimal to Octal\n");
- gotoxy(20,14);p("12. Hexadecimal to Decimal\n");
- gotoxy(20,16);p("Enter your choice:");
- s("%d",&choice);
- switch(choice)
- {
- case 1:
- {
- int octalNum[]={0,1,10,11,100,101,110,111};
- long int binary,i,number,temp,octal=0,j=1;
- gotoxy(20,17);printf("\n\t\tEnter Binary number up to 10 digits: ");
- scanf("%ld",&binary);
- {
- temp=binary;
- while(temp!=0)
- {
- number=temp%1000;
- for(i=0;i<=7;i++)
- {
- if(octalNum[i]==number)
- {
- octal=octal+(i*j);
- }
- }
- j*=10;
- temp/=1000;
- }
- gotoxy(20,19);printf("\n\t\tOctal number of %ld is %ld\n",binary,octal);
- }
- goto again;
- }
- case 2:
- {
- int dec=0,temp,i,inc=0,binary;
- gotoxy(20,18);printf("\n\t\tEnter a binary number up to 10 digits: ");
- scanf("%d",&binary);
- {
- temp=binary;
- while(temp!=0)
- {
- i=temp%10;
- dec=dec+(i*pow(2,inc));
- temp=temp/10;
- inc++;
- }
- gotoxy(20,19);printf("\n\t\tDecimal number of %d is %d\n",binary,dec);
- goto again;
- }
- }
- case 3:
- {
- int binaryNum[]={0,1,10,11,100,101,110,111,1000,1001,1010,1011,1100,1101,1110,1111},j=0,i;
- char hexa[20]="";
- unsigned long long int binary,number,temp;
- gotoxy(20,18);printf("\n\t\tEnter Binary number up to 10 digits:");
- scanf("%llu",&binary);
- temp=binary;
- while(temp!=0)
- {
- number=temp%10000;
- for(i=0;i<=15;i++)
- {
- if(binaryNum[i]==number)
- {
- if(i<=9)
- hexa[j]=(i+'0');
- else
- hexa[j]=(i+55);
- j++;
- }
- }
- temp/=10000;
- }
- hexa[j]='\0';
- strrev(hexa);
- gotoxy(20,19);printf("\n\t\tHexadecimal number of %llu is %s\n",binary,hexa);
- goto again;
- }
- case 4:
- {
- char *octalNum[]={"000","001","010","011","100","101","110","111"};
- int i=0,number,j=1;
- long long int octal,temp;
- char binary[20][6];
- gotoxy(20,18);printf("\n\t\tEnter Octal number up to 10 digits: ");
- scanf("%lld",&octal);
- temp=octal;
- while(temp!=0)
- {
- number=temp%10;
- if(number>=0 && number<=7)
- {
- strcpy(binary[i],octalNum[number]);
- temp/=10;
- i++;
- }
- else
- {
- gotoxy(20,19);printf("\n\t\tInvalid Octal Number\n");
- goto again;
- }
- }
- gotoxy(20,19);printf("\n\t\tBinary number of %lld is ",octal);
- for(j=i-1;j>=0;j--)
- printf("%s",binary[j]);
- goto again;
- }
- case 5:
- {
- int dec=0,temp,i,inc=0,octal;
- gotoxy(20,17);printf("\n\t\tEnter octal number up to 10 digits: ");
- scanf("%d",&octal);
- temp=octal;
- while(temp!=0)
- {
- i=temp%10;
- dec=dec+(i*pow(8,inc));
- temp=temp/10;
- inc++;
- }
- gotoxy(20,19);printf("n\t\tDecimal number of %d is %d\n",octal,dec);
- goto again;
- }
- case 6:
- {
- int OCTALVALUES[] = {0, 1, 10, 11, 100, 101, 110, 111};
- long long octal, tempOctal, binary, place;
- char hex[65] = "";
- int rem;
- place = 1;
- binary = 0;
- gotoxy(20,18);printf("\n\t\tEnter any octal number up to 10 digits: ");
- scanf("%lld", &octal);
- tempOctal = octal;
- while(tempOctal > 0)
- {
- rem = tempOctal % 10;
- binary = (OCTALVALUES[rem] * place) + binary;
- tempOctal /= 10;
- place *= 1000;
- }
- while(binary > 0)
- {
- rem = binary % 10000;
- switch(rem)
- {
- case 0:
- strcat(hex, "0");
- break;
- case 1:
- strcat(hex, "1");
- break;
- case 10:
- strcat(hex, "2");
- break;
- case 11:
- strcat(hex, "3");
- break;
- case 100:
- strcat(hex, "4");
- break;
- case 101:
- strcat(hex, "5");
- break;
- case 110:
- strcat(hex, "6");
- break;
- case 111:
- strcat(hex, "7");
- break;
- case 1000:
- strcat(hex, "8");
- break;
- case 1001:
- strcat(hex, "9");
- break;
- case 1010:
- strcat(hex, "A");
- break;
- case 1011:
- strcat(hex, "B");
- break;
- case 1100:
- strcat(hex, "C");
- break;
- case 1101:
- strcat(hex, "D");
- break;
- case 1110:
- strcat(hex, "E");
- break;
- case 1111:
- strcat(hex, "F");
- break;
- }
- binary /= 10000;
- }
- gotoxy(20,19);printf("\n\t\tOctal number: %lld\n", octal);
- gotoxy(20,20);printf("\n\t\tHexadecimal number: %s\n", hex);
- goto again;
- }
- case 7:
- {
- int dec,temp,i,j=1,binary=0;
- gotoxy(20,18);printf("\n\t\tEnter decimal number up to 10 digits: ");
- scanf("%d",&dec);
- temp=dec;
- while(temp!=0)
- {
- i=temp%2;
- binary=binary+(i*j);
- temp=temp/2;
- j=j*10;
- }
- gotoxy(20,19);printf("\n\t\tBinary number of %d is %d\n",dec,binary);
- goto again;
- }
- case 8:
- {
- int dec,temp,i,j=1,octal=0;
- gotoxy(20,18);printf("\n\t\tEnter decimal number up to 10 digits: ");
- scanf("%d",&dec);
- temp=dec;
- while(temp!=0)
- {
- i=temp%8;
- octal=octal+(i*j);
- temp=temp/8;
- j=j*10;
- }
- gotoxy(20,19);printf("\n\t\tOctal number of %d is %d \n",dec,octal);
- goto again;
- }
- case 9:
- { long int decimalNumber,quotient;
- int i=1,j,temp;
- char hexadecimalNumber[100];
- gotoxy(20,18);printf("\n\t\tEnter any decimal number up to 10 digits: ");
- scanf("%ld",&decimalNumber);
- quotient = decimalNumber;
- while(quotient!=0) {
- temp = quotient % 16;
- if( temp < 10)
- temp =temp + 48; else
- temp = temp + 55;
- hexadecimalNumber[i++]= temp;
- quotient = quotient / 16;
- }
- gotoxy(20,19);printf("\n\t\tEquivalent hexadecimal value is :");
- for (j = i -1 ;j> 0;j--)
- printf("%c",hexadecimalNumber[j]);
- goto again;
- }
- case 10:
- {
- long int i=0;
- char binnum[100], hexdec[100];
- gotoxy(20,18);printf("\n\t\tEnter any hexadecimal number up to 10 digits: ");
- scanf("%s",hexdec);
- gotoxy(20,19);printf("\n\t\tEquivalent Binary value is : ");
- while(hexdec[i])
- {
- switch(hexdec[i])
- {
- case '0' : printf("0000");
- break;
- case '1' : printf("0001");
- break;
- case '2' : printf("0010");
- break;
- case '3' : printf("0011");
- break;
- case '4' : printf("0100");
- break;
- case '5' : printf("0101");
- break;
- case '6' : printf("0110");
- break;
- case '7' : printf("0111");
- break;
- case '8' : printf("1000");
- break;
- case '9' : printf("1001");
- break;
- case 'A' : printf("1010");
- break;
- case 'B' : printf("1011");
- break;
- case 'C' : printf("1100");
- break;
- case 'D' : printf("1101");
- break;
- case 'E' : printf("1110");
- break;
- case 'F' : printf("1111");
- break;
- case 'a' : printf("1010");
- break;
- case 'b' : printf("1011");
- break;
- case 'c' : printf("1100");
- break;
- case 'd' : printf("1101");
- break;
- case 'e' : printf("1110");
- break;
- case 'f' : printf("1111");
- break;
- default :gotoxy(20,19); printf("\n\t\tInvalid hexadecimal digit %s",hexdec[i]);
- }
- i++;
- goto again;
- }
- case 11:
- {
- char hex[20];
- int hex_to_oct(char hex[])
- {
- int i,len, dec=0, oct=0;
- gotoxy(20,18);printf("\n\t\tEnter Hexadecimal Number up to 10 digits: ");
- scanf("%s",hex);
- gotoxy(20,19);printf("\n\t\tEquivalent Octal Value is %d",hex_to_oct(hex));
- for(len=0; hex[len]!='\0'; len++);
- for(i=0; hex[i]!='\0'; i++,len--)
- {
- if(hex[i]>='0' && hex[i]<='9')
- {
- dec= dec + (hex[i]-'0')*pow(16,len-1);
- }
- if(hex[i]>='A' && hex[i]<='F')
- {
- dec = dec + (hex[i]-55)*pow(16,len-1);
- }
- if(hex[i]>='a' && hex[i]<='f')
- {
- dec = dec + (hex[i]-87)*pow(16,len-1);
- }
- }
- i=1;
- while(dec!=0)
- {
- oct = oct + (dec%8)*i;
- dec = dec/8;
- i = i*10;
- }
- }
- }
- case 12:
- { char hex['9'];
- char *hexstr;
- int length = 0;
- const int base = 16;
- unsigned long decnum = 0;
- int i;
- gotoxy(20,18); printf("\n\t\tEnter Hexadecimal Number up to 10 digits: ");
- scanf("%s", hex);
- for(hexstr = hex; *hexstr != '\0'; hexstr++)
- {
- length++;
- }
- hexstr = hex;
- for(i = 0; *hexstr != '\0' && i < length; i++, hexstr++)
- {
- if(*hexstr >= 48 && *hexstr <= 57)
- {
- decnum += (((int)(*hexstr)) - 48) * pow(base, length - i - 1);
- }
- else if((*hexstr >= 65 && *hexstr <= 70))
- {
- decnum += (((int)(*hexstr)) - 55) * pow(base, length - i - 1);
- }
- else if(*hexstr >= 97 && *hexstr <= 102)
- {
- decnum += (((int)(*hexstr)) - 87) * pow(base, length - i - 1);
- }
- else
- {
- gotoxy(20,19); printf("\n\t\tInvalid Hexadecimal Number \n");
- }
- }
- gotoxy(20,19);printf("\n\t\tEquivalent Decimal Number is %u \n", decnum);
- goto again;
- }
- default:
- {
- gotoxy(20,18);p("invalid input");
- goto again;
- }
- }
- }
- char ans;
- again:
- p("\n\t\tWould you like to convert again? \n");
- p("\n\t\tEnter y if Yes, Enter n if No: ");
- s("\n\t\t%s",&ans);
- switch(ans)
- {
- case 'y':case 'Y':
- {
- system("cls");
- goto ulit;
- }
- case 'n':case 'N':
- {
- system("cls");
- p("\n\t\tTHANK YOU!\n");
- p("\n\t\tPlease type any key to exit\n");
- break;
- }
- default:
- {
- p("\n\t\tPlease enter correct choice\n");
- goto again;
- }
- }
- break;
- }
- else
- {
- system("cls");
- printf("\n\t\tPassword Incorrect\n");
- }
- }
- else
- {
- system("cls");
- printf("\n\t\tUsername Incorrect\n");
- }
- i--;
- }while(i>=0);
- }#include<stdio.h>
- #include<string.h>
- #include<math.h>
- #include<conio.h>
- #include<windows.h>
- #define p printf
- #define s scanf
- #include<stdlib.h>
- COORD coord={0,0};
- void gotoxy(int x,int y)
- {
- coord.X=x;
- coord.Y=y;
- SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
- }
- main()
- {
- char username[20];
- char password[20];
- int i=2;
- int d;
- char ch;
- do
- {
- system("COLOR F0");
- gotoxy(10,2);p("welcome please enter username and password");
- gotoxy(10,3);printf("Enter User: ");
- scanf("%s",&username);
- gotoxy(10,4);printf("Enter Password: ");
- s("%s",password);
- if(strcmp(username, "elpost")==0)
- {
- if(strcmp(password, "epf")==0)
- {
- int choice;
- system("cls");
- gotoxy(20,2);printf("Welcome To Code Converter\n");
- ulit:
- gotoxy(20,2);p("**********CHOICES**********");
- gotoxy(20,3);p("1. Binary To Octal\n");
- gotoxy(20,4);p("2. Binary to Decimal\n");
- gotoxy(20,5);p("3. Binary to Hexadecimal\n");
- gotoxy(20,6);p("4. Octal to Binary\n");
- gotoxy(20,7);p("5. Octal to Decimal\n");
- gotoxy(20,8);p("6. Octal to Hexadecimal\n");
- gotoxy(20,9);p("7. Decimal to Binary\n");
- gotoxy(20,10);p("8. Decimal to Octal\n");
- gotoxy(20,11);p("9. Decimal to Hexadecimal\n");
- gotoxy(20,12);p("10. Hexadecimal to Binary\n");
- gotoxy(20,13);p("11. Hexadecimal to Octal\n");
- gotoxy(20,14);p("12. Hexadecimal to Decimal\n");
- gotoxy(20,16);p("Enter your choice:");
- s("%d",&choice);
- switch(choice)
- {
- case 1:
- {
- int octalNum[]={0,1,10,11,100,101,110,111};
- long int binary,i,number,temp,octal=0,j=1;
- gotoxy(20,17);printf("\n\t\tEnter Binary number up to 10 digits: ");
- scanf("%ld",&binary);
- {
- temp=binary;
- while(temp!=0)
- {
- number=temp%1000;
- for(i=0;i<=7;i++)
- {
- if(octalNum[i]==number)
- {
- octal=octal+(i*j);
- }
- }
- j*=10;
- temp/=1000;
- }
- gotoxy(20,19);printf("\n\t\tOctal number of %ld is %ld\n",binary,octal);
- }
- goto again;
- }
- case 2:
- {
- int dec=0,temp,i,inc=0,binary;
- gotoxy(20,18);printf("\n\t\tEnter a binary number up to 10 digits: ");
- scanf("%d",&binary);
- {
- temp=binary;
- while(temp!=0)
- {
- i=temp%10;
- dec=dec+(i*pow(2,inc));
- temp=temp/10;
- inc++;
- }
- gotoxy(20,19);printf("\n\t\tDecimal number of %d is %d\n",binary,dec);
- goto again;
- }
- }
- case 3:
- {
- int binaryNum[]={0,1,10,11,100,101,110,111,1000,1001,1010,1011,1100,1101,1110,1111},j=0,i;
- char hexa[20]="";
- unsigned long long int binary,number,temp;
- gotoxy(20,18);printf("\n\t\tEnter Binary number up to 10 digits:");
- scanf("%llu",&binary);
- temp=binary;
- while(temp!=0)
- {
- number=temp%10000;
- for(i=0;i<=15;i++)
- {
- if(binaryNum[i]==number)
- {
- if(i<=9)
- hexa[j]=(i+'0');
- else
- hexa[j]=(i+55);
- j++;
- }
- }
- temp/=10000;
- }
- hexa[j]='\0';
- strrev(hexa);
- gotoxy(20,19);printf("\n\t\tHexadecimal number of %llu is %s\n",binary,hexa);
- goto again;
- }
- case 4:
- {
- char *octalNum[]={"000","001","010","011","100","101","110","111"};
- int i=0,number,j=1;
- long long int octal,temp;
- char binary[20][6];
- gotoxy(20,18);printf("\n\t\tEnter Octal number up to 10 digits: ");
- scanf("%lld",&octal);
- temp=octal;
- while(temp!=0)
- {
- number=temp%10;
- if(number>=0 && number<=7)
- {
- strcpy(binary[i],octalNum[number]);
- temp/=10;
- i++;
- }
- else
- {
- gotoxy(20,19);printf("\n\t\tInvalid Octal Number\n");
- goto again;
- }
- }
- gotoxy(20,19);printf("\n\t\tBinary number of %lld is ",octal);
- for(j=i-1;j>=0;j--)
- printf("%s",binary[j]);
- goto again;
- }
- case 5:
- {
- int dec=0,temp,i,inc=0,octal;
- gotoxy(20,17);printf("\n\t\tEnter octal number up to 10 digits: ");
- scanf("%d",&octal);
- temp=octal;
- while(temp!=0)
- {
- i=temp%10;
- dec=dec+(i*pow(8,inc));
- temp=temp/10;
- inc++;
- }
- gotoxy(20,19);printf("n\t\tDecimal number of %d is %d\n",octal,dec);
- goto again;
- }
- case 6:
- {
- int OCTALVALUES[] = {0, 1, 10, 11, 100, 101, 110, 111};
- long long octal, tempOctal, binary, place;
- char hex[65] = "";
- int rem;
- place = 1;
- binary = 0;
- gotoxy(20,18);printf("\n\t\tEnter any octal number up to 10 digits: ");
- scanf("%lld", &octal);
- tempOctal = octal;
- while(tempOctal > 0)
- {
- rem = tempOctal % 10;
- binary = (OCTALVALUES[rem] * place) + binary;
- tempOctal /= 10;
- place *= 1000;
- }
- while(binary > 0)
- {
- rem = binary % 10000;
- switch(rem)
- {
- case 0:
- strcat(hex, "0");
- break;
- case 1:
- strcat(hex, "1");
- break;
- case 10:
- strcat(hex, "2");
- break;
- case 11:
- strcat(hex, "3");
- break;
- case 100:
- strcat(hex, "4");
- break;
- case 101:
- strcat(hex, "5");
- break;
- case 110:
- strcat(hex, "6");
- break;
- case 111:
- strcat(hex, "7");
- break;
- case 1000:
- strcat(hex, "8");
- break;
- case 1001:
- strcat(hex, "9");
- break;
- case 1010:
- strcat(hex, "A");
- break;
- case 1011:
- strcat(hex, "B");
- break;
- case 1100:
- strcat(hex, "C");
- break;
- case 1101:
- strcat(hex, "D");
- break;
- case 1110:
- strcat(hex, "E");
- break;
- case 1111:
- strcat(hex, "F");
- break;
- }
- binary /= 10000;
- }
- gotoxy(20,19);printf("\n\t\tOctal number: %lld\n", octal);
- gotoxy(20,20);printf("\n\t\tHexadecimal number: %s\n", hex);
- goto again;
- }
- case 7:
- {
- int dec,temp,i,j=1,binary=0;
- gotoxy(20,18);printf("\n\t\tEnter decimal number up to 10 digits: ");
- scanf("%d",&dec);
- temp=dec;
- while(temp!=0)
- {
- i=temp%2;
- binary=binary+(i*j);
- temp=temp/2;
- j=j*10;
- }
- gotoxy(20,19);printf("\n\t\tBinary number of %d is %d\n",dec,binary);
- goto again;
- }
- case 8:
- {
- int dec,temp,i,j=1,octal=0;
- gotoxy(20,18);printf("\n\t\tEnter decimal number up to 10 digits: ");
- scanf("%d",&dec);
- temp=dec;
- while(temp!=0)
- {
- i=temp%8;
- octal=octal+(i*j);
- temp=temp/8;
- j=j*10;
- }
- gotoxy(20,19);printf("\n\t\tOctal number of %d is %d \n",dec,octal);
- goto again;
- }
- case 9:
- { long int decimalNumber,quotient;
- int i=1,j,temp;
- char hexadecimalNumber[100];
- gotoxy(20,18);printf("\n\t\tEnter any decimal number up to 10 digits: ");
- scanf("%ld",&decimalNumber);
- quotient = decimalNumber;
- while(quotient!=0) {
- temp = quotient % 16;
- if( temp < 10)
- temp =temp + 48; else
- temp = temp + 55;
- hexadecimalNumber[i++]= temp;
- quotient = quotient / 16;
- }
- gotoxy(20,19);printf("\n\t\tEquivalent hexadecimal value is :");
- for (j = i -1 ;j> 0;j--)
- printf("%c",hexadecimalNumber[j]);
- goto again;
- }
- case 10:
- {
- long int i=0;
- char binnum[100], hexdec[100];
- gotoxy(20,18);printf("\n\t\tEnter any hexadecimal number up to 10 digits: ");
- scanf("%s",hexdec);
- gotoxy(20,19);printf("\n\t\tEquivalent Binary value is : ");
- while(hexdec[i])
- {
- switch(hexdec[i])
- {
- case '0' : printf("0000");
- break;
- case '1' : printf("0001");
- break;
- case '2' : printf("0010");
- break;
- case '3' : printf("0011");
- break;
- case '4' : printf("0100");
- break;
- case '5' : printf("0101");
- break;
- case '6' : printf("0110");
- break;
- case '7' : printf("0111");
- break;
- case '8' : printf("1000");
- break;
- case '9' : printf("1001");
- break;
- case 'A' : printf("1010");
- break;
- case 'B' : printf("1011");
- break;
- case 'C' : printf("1100");
- break;
- case 'D' : printf("1101");
- break;
- case 'E' : printf("1110");
- break;
- case 'F' : printf("1111");
- break;
- case 'a' : printf("1010");
- break;
- case 'b' : printf("1011");
- break;
- case 'c' : printf("1100");
- break;
- case 'd' : printf("1101");
- break;
- case 'e' : printf("1110");
- break;
- case 'f' : printf("1111");
- break;
- default :gotoxy(20,19); printf("\n\t\tInvalid hexadecimal digit %s",hexdec[i]);
- }
- i++;
- goto again;
- }
- case 11:
- {
- char hex[20];
- int hex_to_oct(char hex[])
- {
- int i,len, dec=0, oct=0;
- gotoxy(20,18);printf("\n\t\tEnter Hexadecimal Number up to 10 digits: ");
- scanf("%s",hex);
- gotoxy(20,19);printf("\n\t\tEquivalent Octal Value is %d",hex_to_oct(hex));
- for(len=0; hex[len]!='\0'; len++);
- for(i=0; hex[i]!='\0'; i++,len--)
- {
- if(hex[i]>='0' && hex[i]<='9')
- {
- dec= dec + (hex[i]-'0')*pow(16,len-1);
- }
- if(hex[i]>='A' && hex[i]<='F')
- {
- dec = dec + (hex[i]-55)*pow(16,len-1);
- }
- if(hex[i]>='a' && hex[i]<='f')
- {
- dec = dec + (hex[i]-87)*pow(16,len-1);
- }
- }
- i=1;
- while(dec!=0)
- {
- oct = oct + (dec%8)*i;
- dec = dec/8;
- i = i*10;
- }
- }
- }
- case 12:
- { char hex['9'];
- char *hexstr;
- int length = 0;
- const int base = 16;
- unsigned long decnum = 0;
- int i;
- gotoxy(20,18); printf("\n\t\tEnter Hexadecimal Number up to 10 digits: ");
- scanf("%s", hex);
- for(hexstr = hex; *hexstr != '\0'; hexstr++)
- {
- length++;
- }
- hexstr = hex;
- for(i = 0; *hexstr != '\0' && i < length; i++, hexstr++)
- {
- if(*hexstr >= 48 && *hexstr <= 57)
- {
- decnum += (((int)(*hexstr)) - 48) * pow(base, length - i - 1);
- }
- else if((*hexstr >= 65 && *hexstr <= 70))
- {
- decnum += (((int)(*hexstr)) - 55) * pow(base, length - i - 1);
- }
- else if(*hexstr >= 97 && *hexstr <= 102)
- {
- decnum += (((int)(*hexstr)) - 87) * pow(base, length - i - 1);
- }
- else
- {
- gotoxy(20,19); printf("\n\t\tInvalid Hexadecimal Number \n");
- }
- }
- gotoxy(20,19);printf("\n\t\tEquivalent Decimal Number is %u \n", decnum);
- goto again;
- }
- default:
- {
- gotoxy(20,18);p("invalid input");
- goto again;
- }
- }
- }
- char ans;
- again:
- p("\n\t\tWould you like to convert again? \n");
- p("\n\t\tEnter y if Yes, Enter n if No: ");
- s("\n\t\t%s",&ans);
- switch(ans)
- {
- case 'y':case 'Y':
- {
- system("cls");
- goto ulit;
- }
- case 'n':case 'N':
- {
- system("cls");
- p("\n\t\tTHANK YOU!\n");
- p("\n\t\tPlease type any key to exit\n");
- break;
- }
- default:
- {
- p("\n\t\tPlease enter correct choice\n");
- goto again;
- }
- }
- break;
- }
- else
- {
- system("cls");
- printf("\n\t\tPassword Incorrect\n");
- }
- }
- else
- {
- system("cls");
- printf("\n\t\tUsername Incorrect\n");
- }
- i--;
- }while(i>=0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement