Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #define MAX 101
- void *hexmasuno ( char *cadenita);
- int main()
- {
- char cadena[MAX];
- char fin[4]="FIN";
- do{
- strcpy(cadena,"");
- scanf("%[^\n]s",cadena);
- getchar();
- if(strcmp(cadena,fin) == 0){
- break;
- }
- hexmasuno(cadena);
- }while(strcmp(cadena,fin) != 0);
- return 0;
- }
- void *hexmasuno ( char *cadenita){
- char hexadecimal[17] = "0123456789ABCDEF";
- char cadena[102];
- int i,largo;
- largo = strlen(cadenita);
- int indice=0;
- char *puntero;
- int acarreo=1;
- int flag=1;
- for(i = largo-1; i >= 0; i--)
- {
- if((cadenita[i]=='F')&&(flag==1)){
- if(i == 0){
- cadena[i] = '1';
- cadena[largo] = '0';
- largo++;
- }
- else{
- cadena[i] = '0';
- acarreo = 1;
- }
- }
- else{
- if (acarreo==1) {
- puntero = strchr(hexadecimal,cadenita[i]);
- indice = puntero - hexadecimal;
- indice++;
- cadena[i] = hexadecimal[indice];
- acarreo=0;
- flag=0;
- }
- else {
- cadena[i] = cadenita[i];
- }
- }
- }
- cadena[largo] = '\0';
- printf("%s\n",cadena);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement