Foros del Web » Programación para mayores de 30 ;) » C/C++ »

ayuda con sentencia while porfavor

Estas en el tema de ayuda con sentencia while porfavor en el foro de C/C++ en Foros del Web. Hola, estoy programando y me tira un error que dice: In function `void ingresar()': 78 expected `)' before ';' token 78 expected `;' before ')' ...
  #1 (permalink)  
Antiguo 01/07/2009, 18:16
 
Fecha de Ingreso: junio-2009
Mensajes: 9
Antigüedad: 14 años, 11 meses
Puntos: 0
ayuda con sentencia while porfavor

Hola, estoy programando y me tira un error que dice:


In function `void ingresar()':
78 expected `)' before ';' token
78 expected `;' before ')' token



y tengo esto:

void ingresar()
{
int i;

while (i = 0; i <= 10; i++);

printf("%s", "Ingrese nombre : ");
scanf("%s", personas[cantPers].nombre);
printf("%s", "Ingrese telefono : ");
scanf("%s", personas[cantPers].telefono);


}


porfavor ayuda, gracias!
  #2 (permalink)  
Antiguo 01/07/2009, 18:26
 
Fecha de Ingreso: junio-2009
Mensajes: 9
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: ayuda con sentencia while porfavor

la idea que quiero es ingresar 10 veces el nombre y el telefono de 10 personas, y que luego pare. Como lo hago?
  #3 (permalink)  
Antiguo 01/07/2009, 18:31
 
Fecha de Ingreso: junio-2009
Mensajes: 9
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: ayuda con sentencia while porfavor

Tambien trate con esto:

void ingresar()
{
int i;
i=0;

do
{ printf("%s", "Ingrese nombre : ");
scanf("%s", personas[cantPers].nombre);
printf("%s", "Ingrese telefono : ");
scanf("%s", personas[cantPers].telefono);
}
while (i <= 10);


}


y no me tira errores de compilacion, pero el ciclo es infinito. Que hice mal?
  #4 (permalink)  
Antiguo 02/07/2009, 01:40
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: ayuda con sentencia while porfavor

El error en el ultimo codigo es no incrementar i en ningun lado. En el primero trataste a while como si fuera un for si cambias por este ultimo y sacas el ; del final de la linea y metes el codigo del bucle entre {} te va a funcionar bien.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #5 (permalink)  
Antiguo 02/07/2009, 19:24
 
Fecha de Ingreso: junio-2009
Mensajes: 14
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: ayuda con sentencia while porfavor

es chistoso, estas usando un while pero en la condicion le pusiste todo lo de un for, intenta con esto:

void ingresar()
{
int i;

for (i = 0; i <= 10; i++){

printf("%s", "Ingrese nombre : ");
scanf("%s", personas[cantPers].nombre);
printf("%s", "Ingrese telefono : ");
scanf("%s", personas[cantPers].telefono);
}

}
  #6 (permalink)  
Antiguo 02/07/2009, 19:34
 
Fecha de Ingreso: junio-2009
Mensajes: 14
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: ayuda con sentencia while porfavor

Cita:
Iniciado por BateroCarbon Ver Mensaje
Hola, estoy programando y me tira un error que dice:


In function `void ingresar()':
78 expected `)' before ';' token
78 expected `;' before ')' token



y tengo esto:

void ingresar()
{
int i;

while (i = 0; i <= 10; i++);

printf("%s", "Ingrese nombre : ");
scanf("%s", personas[cantPers].nombre);
printf("%s", "Ingrese telefono : ");
scanf("%s", personas[cantPers].telefono);


}


porfavor ayuda, gracias!
El error es por que tu tienes while (i = 0; i <= 10; i++);
error 1)las estructuras de control no llevan punto y coma al final
error 2)Se escribe while(condicion),
para for(inicializacion; condicion; incremento)
tu escribiste el while como for
error 3) por lo general las estructuras de control, bucles lleban {llabes}
que encierran a todo lo que se repite mientras se cumple la condicion.

Saludos.
  #7 (permalink)  
Antiguo 03/07/2009, 00:02
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: ayuda con sentencia while porfavor

Hay que leer todo el hilo antes responder.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:04.