C/Visual C - 2 Preguntas, grafos y validacion

 
Vista:

2 Preguntas, grafos y validacion

Publicado por Francisco Hernandez (3 intervenciones) el 13/05/2004 23:15:57
Hola a todos, quisiera primero que me explicaran (en lenguaje c) como puedo validar la entrada de datos para que si pido enteros no se pueda meter caracteres, u otros tipos de datos, igual con los demas (si pido caracter, no introduzca float, etc...) Me dijeron que lo hiciera con fflush creo pero no entiendo como... A quien me pueda explicar GRACIAS!!!

La otra pregunta es acerca de como puedo encontrar un circuito euleriano en una matriz representada de la siguiente forma:

Vertices 1 2 3
1 0 1 1
2 1 0 1
3 1 1 0

Donde hay un 1 si existe arco entre un vertice y otro, o un 0 si no hay nada...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:2 Preguntas, grafos y validacion

Publicado por zzzz (6 intervenciones) el 15/05/2004 04:51:52
Hola! Puedes usar alguna de las siguientes funciones de c

char c
isalpha (C); TE DICE SI UN CARACTER ES LETRA
isdigiT (C); TE DICE SI UN CARACTER ES DIGITO

O SI NO CON UN SWITCH

switch (C)
{
case 0:
case 1:
...
case 9:
case '.':
default
printf ("No es un numero flotante)

A la otra pregunta no le entendi bien, si hay un 1 muestras un mensaje.
Si es asi también podria ser con switch.
puedes enviarme un correo y te explico mejor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:2 Preguntas, grafos y validacion

Publicado por Francisco Hernandez (3 intervenciones) el 15/05/2004 17:57:40
La primera pregunta tu dices que tengo que utilizar un caracter, pero si introduzco un numero de mas de dos digitos?? supongo que como una cadena... Y despues como hago para guardar la variable si es un caracter en un tipo de dato entero??...

La otra pregunta es acerca de como puedo encontrar un circuito euleriano en una matriz representada de la siguiente forma:

Vertices 1 2 3
1 0 1 1
2 1 0 1
3 1 1 0

Donde hay un 1 si existe arco entre un vertice y otro, o un 0 si no hay nada...

Si hay un 1 significa que hay un arco que une a esos dos vertices, si hay un 0 no hay arco... Lo que necesito saber es como encuentro un circuito que pase por todos los vertices sin repetir arcos... ????

P.D: Te mande un mensaje pero tu direccion no existe.... ¿?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 5 puestos en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

RE:2 Preguntas, grafos y validacion

Publicado por zzz (318 intervenciones) el 16/05/2004 21:11:43
Hola! en mi anterior mail me falto la l de email.com,
Sobre tus dudas ahi van:
Para validar que sean numeros puedes ver la respuesta que puse en otra duda mas arriba de como convertir una cadena a int., donde tambien contesto nicolas . Pero aqui esta mas o menos lo que puse:
Primero pides el dato, lo guardas como cadena.
luego declaras una variable de tipo caracter y ahi vas copiando cada numero de la cadena, y luego vas checando si es digito, o es punto para checar si es flotante, si quieres declaras una variable boleana o un entero auxiiar para checar que no te ponga en un mismo numero 2 puntos. Luego mediante la funcion atoi conviertes ese numero a entero, con la funcion atof lo conviertes a flotante el codigo esta en la respuesta de mas arriba.
Sobre la otra pregunta no le entendi bien. y no se muy bien como hacerle, si hay un 2 o un 3 que pasa. No se como hacerle para que si hay un 1 no repita pasos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar