Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //gcc 5.4.0
- //Librerias
- #include <stdio.h>
- //#define MAX 101
- #define MAX 102 //*********OJOOO POR SI HAY QUE AGREGAR UN 1
- #include <string.h>
- typedef struct Cadenas{
- char cadena[MAX];
- char result[MAX];
- }cade;
- int main(){ //Inicio del Main
- //Declaración de Variables
- cade vector;
- short int i, j, largo;
- short int flag, cont;
- char hexa[17] = "0123456789ABCDEF";
- //for(h = 1; h <= MAX; h++){
- //OJO Un caso de prueba con la cadena FIN marca el final.
- strcpy(vector.result,"");
- while (strcmp(vector.result,"FIN") != 0)
- {
- scanf("%100[^\n]s", vector.result); //Ingresar los valores para la cadena
- getchar(); //SE LEE EL ENTER QUE QUEDA EN EL BUFFER
- //SOLO SE PROCESA LA CADENA SI ES DISTINTA DE "FIN"
- if (strcmp(vector.result,"FIN") != 0) {
- //NO ES NECESARIO VALIDAR !!!
- /*for(i = 0; i < largo; i++){ //Validar los valores ingresados
- cont=0;
- for(j = 0; j < 16; j++){
- if(result[i] != hexa[j]){
- cont++;
- }
- if(cont == 16){
- return 0;
- }
- }
- }*/
- //OJO LA CADENA DEBE tener 102 caracteres posiciones entre 0 y 101
- // si te ingresan 100 F's
- for(i = 0; i < MAX; i++){
- vector.cadena[i] = '0';
- }
- largo = strlen(vector.result);
- //Rellenar los valores en la cadena
- //for(i = MAX; largo >= 0; i--){
- for(i = MAX-1; largo >= 0; i--){
- vector.cadena[i] = vector.result[largo];
- largo--;
- }
- flag=0;
- //for(i = MAX-1; i >= 0; i--){
- for(i = MAX-2; i >= 0; i--){
- for(j = 0; j < 16; j++){
- if(vector.cadena[i] == hexa[j]){
- if(vector.cadena[i] == 'F'){ //Cuando es igual a F
- vector.cadena[i] = '0';
- break;
- }
- vector.cadena[i] = hexa[j+1]; //Cuando no es igual a F
- flag = 1;
- break;
- }
- }
- if(flag == 1){
- break;
- }
- }
- //for(i = 0; i < MAX; i++){
- for(i = 0; i < MAX - 1; i++){
- if(vector.cadena[i] != '0'){
- largo = i;
- break;
- }
- }
- //for(i = largo; i < MAX; i++){
- for(i = largo; i < MAX-1; i++){
- printf("%c",vector.cadena[i]);
- }
- printf("\n");
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement