• Lunes 11 de Mayo de 2026, 00:20

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - cobain21

Páginas: [1]
1
C/C++ / Re: duda principiante!!!
« en: Miércoles 9 de Diciembre de 2009, 01:00 »
Uso el code blocks.
Citar
Y por qué el getchar() del primer código no lo sustituyes por un while(getchar() != 'n');?

probe de esta forma, me compila bien pero se me cuelga tambien cuando ingreso la segunda linea.

yo lo tengo asi en modulos diferentes:

Código: C++
  1. typedef struct {
  2.     String fecha;
  3.     String comentario;
  4.     String cliente;
  5.     int precio;
  6. }Maquillaje;
  7.  

el "String" lo tengo hecho en otro modulo y es para que me lea he imprima las cadenas de texto, no creo que haga falta poner el codigo del String para que lo vean. El scan guarda y el print imprime.

Código: C++
  1. void IngresoMaquillaje (Maquillaje &maqui)//carga un maquillaje en ingresos
  2. {
  3.     printf ("Ingrese la fecha:");
  4.     fgets (maqui.fecha, sizeof (maqui.fecha), stdin);
  5.     while(getchar() != 'n');
  6.     printf ("nIngrese un comentario:");
  7.     fgets(maqui.comentario, sizeof(maqui.comentario), stdin);
  8.     printf ("nIngrese un cliente:");
  9.     fgets(maqui.cliente, sizeof(maqui.cliente), stdin);
  10.     printf ("nIngrese el precio:");
  11.     char line[80];
  12.     fgets(line, sizeof(line), stdin);
  13.     sscanf (line, "%d", &maqui.precio);
  14. }
  15.  

Asi fue de la unica manera que me funciono: pero he leido que no es recomendado su uso:

Código: C++
  1. void IngresoDepilacion (Depilacion &depi)//carga un maquillaje en ingresos
  2. {
  3.     printf ("Ingrese la fecha:");
  4.     scan (maqui.fecha);
  5.     getchar();
  6.     fflush (stdin);//sirve para limpiar el buffer del teclado y que no me quede el "enter" guardado
  7.     printf ("nIngrese un comentario:");
  8.     fflush (stdin);
  9.     scan (maqui.comentario);
  10.     printf ("nIngrese el nombre del cliente:");
  11.     fflush (stdin);
  12.     scan (maqui.cliente);
  13.     printf ("nIngrese el precio:");
  14.     fflush (stdin);
  15.     scanf ("%d", &maqui.precio);
  16. }
  17.  
  18.  

2
C/C++ / Re: duda principiante!!!
« en: Martes 8 de Diciembre de 2009, 22:43 »
Haber se me podes corregir...ahi me compila bien pero se me montan las salidas :Ingresar cliente, etc y despues me dice que el programa debe cerrarse porque se produjo un error. Te escribo el codigo.
Código: C++
  1. void IngresoMaquillaje (Maquillaje &maqui)//carga un maquillaje en ingresos
  2. {
  3.     printf ("Ingrese la fecha:");
  4.     fgets (maqui.fecha, sizeof (maqui.fecha), stdin);
  5.     getchar();
  6.     printf ("nIngrese un comentario:");
  7.     fgets(maqui.comentario, sizeof(maqui.comentario), stdin);
  8.     printf ("nIngrese un cliente:");
  9.     fgets(maqui.cliente, sizeof(maqui.cliente), stdin);
  10.     printf ("nIngrese el precio:");
  11.     char line[80];
  12.     fgets(line, sizeof(line), stdin);
  13.     sscanf (line, "%d", &maqui.precio);
  14. }
  15.  

Gracias

3
C/C++ / Re: duda principiante!!!
« en: Martes 8 de Diciembre de 2009, 19:20 »
Eternal Idol: lo hice a tu manera y me compilo bien pero al momento de ejecutar el programa me tiraba error.
Lo hice de esta manera y me funcionó:

Código: C++
  1. void IngresoMaquillaje (Maquillaje &maqui)//carga un maquillaje en ingresos
  2. {
  3.     printf ("Ingrese la fecha:");
  4.     scan (maqui.fecha);
  5.     getchar();
  6.     fflush (stdin);
  7.     printf ("nIngrese un comentario:");
  8.     fflush (stdin);
  9.     scan (maqui.comentario);
  10.     printf ("nIngrese el nombre del cliente:");
  11.     fflush (stdin);
  12.     scan (maqui.cliente);
  13.     printf ("nIngrese el precio:");
  14.     fflush (stdin);
  15.     scanf ("%d", &maqui.precio);
  16.  
  17.  

Cualquier aclaracion o sugerencia viene bien!!!!
Muchas gracias por tu ayuda.

Saludos

4
C/C++ / duda principiante!!!
« en: Martes 8 de Diciembre de 2009, 13:48 »
Bueno dias, me gustaría tener una solución para lo que abajo les describo...siempre me da problemas. Desde ya muchas gracias....Diego.

void IngresoMaquillaje (Maquillaje &maqui)//carga un maquillaje en ingresos
{
printf ("Ingrese la fecha:");
scan (maqui.fecha);
getchar();
printf ("nIngrese un comentario:");
scan (maqui.comentario);
getchar();
printf ("nIngrese el nombre del cliente:");
scan (maqui.cliente);
getchar();
printf ("nIngrese el precio:");
scanf ("%d", &maqui.precio);
getchar();
getchar();
system ("pause");
}


El problema es que en la ultima linea el "intro" me lo lee como un String y no me sale ingrese un precio sino que en precio me guarda la tecla "intro", se que tiene que ser facil de arreglar pero no me he podido dar cuenta...
Agradesco su colaboración....

Páginas: [1]