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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con while y getchar.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con while y getchar.  (Leído 2,823 veces)
Spinerker

Desconectado Desconectado

Mensajes: 4


Pequeño aprendiz, espero ser un gran maestro.


Ver Perfil
Problema con while y getchar.
« en: 17 Octubre 2013, 13:57 pm »



Hola!! Este es mi primer mensaje aquí puesto que hace menos de un mes que he empezado a aprender C, y me topo con algunos problemas que me son un tanto complicados de arreglar, aunque muchas veces estos una vez vistos parecen tonterías....

Bueno, el caso es que me encontraba haciendo un programa que me indicara letras Mayusculas y minisculas, al parecerme un tanto fácil, he decidido complicarlo un poco mas y añadirle que me pide 8 caracteres y que me indique de nuevo si son mayusculas o no con la función while, tal que así.

#include <stdio.h>
#include <math.h>
int main(void)

{

      int numero=0;
      char letra;



      while (numero <= 7){


    printf("Introduce la letra\n");
      scanf("%c", &letra);
              letra = getchar();                
                      numero++;




      if (letra >= 'a' && letra <= 'z')

        {

          printf("Las letras son minusculas\n");
        }


        else if (letra>='A' && letra<='Z')

        {
          printf("Las letras son mayusculas\n");
        }

         else

        {
          printf("No son letras\n");
        }

        }

      return 0;

}

----------------

Me pide los 8 caracteres pero no me indica si las letras son mayusculas y minusculas, en cambio si le quito el getchar si que me lo pide pero al detectarme el enter... pues me salta dos lineas por lo que es un desastre, ¿Utilizo mal el getchar o es la estructura del programa?


En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.966


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Problema con while y getchar.
« Respuesta #1 en: 17 Octubre 2013, 14:10 pm »

Llama a getchar pero no le asignes su resultado a letra (asi estaras obteniendo el salto de linea pero no poniendolo en letra).


« Última modificación: 17 Octubre 2013, 14:17 pm por Eternal Idol » En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Spinerker

Desconectado Desconectado

Mensajes: 4


Pequeño aprendiz, espero ser un gran maestro.


Ver Perfil
Re: Problema con while y getchar.
« Respuesta #2 en: 17 Octubre 2013, 14:15 pm »

Llama a getchar pero no le asignes su resultado a letra (asi estaras obteniendo el salto de linea pero no poniendolo en letra).

Vaya!!! Siempre cometo errores en las cosas que parecen mas simples, pero bueno, seguiré aprendiendo...

Muchísimas gracias por la respuesta!  ;D  ;-)
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.966


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Problema con while y getchar.
« Respuesta #3 en: 17 Octubre 2013, 14:18 pm »

De nada, por cierto el programa dejara de funcionar correctamente en cuanto el usuario escriba mas de una letra al mismo tiempo, mejor usar fgets con stdin y sscanf.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problema con getchar()
Programación C/C++
juanigato 5 9,489 Último mensaje 23 Diciembre 2013, 19:47 pm
por leosansan
Ayuda con getchar
Programación C/C++
prometheus48 6 3,370 Último mensaje 31 Diciembre 2011, 21:36 pm
por Unbr0ken
Funcio Getchar();
GNU/Linux
Odai 5 4,865 Último mensaje 8 Febrero 2012, 15:57 pm
por Odai
Borrar buffer , como funciona getchar
Programación C/C++
Jomad205 2 10,609 Último mensaje 13 Noviembre 2012, 17:23 pm
por Jomad205
Ayuda con getchar:(
Programación C/C++
TopoJunior 5 3,689 Último mensaje 14 Febrero 2013, 20:53 pm
por durasno
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines