elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Convertir cadena minuscula en mayuscula
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Convertir cadena minuscula en mayuscula  (Leído 13,800 veces)
delirio

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Convertir cadena minuscula en mayuscula
« en: 28 Noviembre 2010, 00:09 am »

Hola gentita.........puxa perdonen la ingnorancia.....pero esq quiero su ayuda con mi codigo .........esq quiero convertir una cadena de caracteres de minusculas a mayusculas ...pero la cosa esq mi codigo solo hace eso para una palabra nomas...y no para una frase porque se cuelga el programa, es decir para los espacios es donde se cuelga .......como stoy trabajando con su codigo ASCII de cada palabra y la diferencia entre cada palabra de minuscula con su respectiva mayuscula es de 32, entonces le resto 32 a esa palabra minuscula y me imprime en pantalla en mayuscula........pero se da que el codigo ASCII del ESPACIO es 32 y entonces ahi sta el problema .....no sé como restringirlo.........como stoy pollo en esto de programacion tovia..........espero me ayuden...............HEEEEELP!!!


Código
  1. #include<iostream.h>
  2. #include<stdlib.h>
  3. #include<stdio.h>
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9.    char cadena[50];
  10.    int i=0;
  11.    int n;
  12.  
  13.    cout<<"Ingrese palabra: ";
  14.    gets(cadena);
  15.  
  16. /*-------------------------------------------------------------*/  
  17.    while(cadena[i] != '\0')
  18.    {
  19.      if(cadena[i]>=97 && cadena[i]<=122)    // a=65  y   z=122  ( en codigo Ascii)
  20.       {                                    
  21.        cadena[i]=cadena[i]-32;                
  22.        i++;
  23.       }
  24.  
  25.    }
  26.    cout<<"\n La palabra convertido en mayusculas es: ";
  27.    cout<<cadena;
  28. /*--------------------------------------------------------------*/    
  29.  
  30. system("PAUSE>nul");
  31. return 0;
  32. }
  33.  
  34.  


« Última modificación: 28 Noviembre 2010, 00:23 am por Littlehorse » En línea

xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: Convertir cadena minuscula en mayuscula
« Respuesta #1 en: 28 Noviembre 2010, 00:38 am »

Haz igual:
Código
  1. if(cadena[i]==' ')
  2.  


En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: CONVERTIR CADENA EN MINUSCULA A MAYUSCULA
« Respuesta #2 en: 28 Noviembre 2010, 00:46 am »

saca  i++ de este trozo de codigo:

Código
  1.      if(cadena[i]>=97 && cadena[i]<=122)    // a=65  y   z=122  ( en codigo Ascii)
  2.       {                                    
  3.        cadena[i]=cadena[i]-32;                
  4.        i++;
  5.       }
  6.  

Código
  1.      if(cadena[i]>=97 && cadena[i]<=122)
  2.        cadena[i]=cadena[i]-32;                
  3.      i++;
  4.  

Código
  1.  
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. int main(int argc, char *argv[])
  7. {
  8.    char cadena[]="InfrAngeluX-Soft\t->\t2010";
  9.    unsigned int i = 0;
  10.    int DifaA= (int)'a' - (int)'A';
  11.    while(cadena[i] != '\0')
  12.    {
  13.      if( (int)cadena[i] >= (int)'a' && (int)cadena[i] <= (int)'z')
  14.          cadena[i] -= DifaA;
  15.      i++;
  16.    }
  17.    cout << cadena << endl;
  18.    getwchar();
  19.    return 1;
  20. }
  21.  
  22.  

Sangriento Infierno Lunar!¡.
« Última modificación: 28 Noviembre 2010, 01:07 am por BlackZeroX▓▓▒▒░░ » En línea

The Dark Shadow is my passion.
delirio

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: Convertir cadena minuscula en mayuscula
« Respuesta #3 en: 28 Noviembre 2010, 04:36 am »

MUXAS GRACIAS GENTE.......JAJJAJA Q ESTUPIDO ERA PA KITARLE LAS LLAVES DESPUES DE EL    if   ....... :xD

osea kedaba asi:

 
Código
  1. while(cadena[i] != '\0')
  2.    {
  3.      if(cadena[i]>=97 && cadena[i]<=122)    // a=65  y   z=122  ( en codigo Ascii)
  4.        cadena[i]=cadena[i]-32;                
  5.        i++;                    
  6.    }    
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines