C/Visual C - Ayuda urgente!!!!!!!!!!!

 
Vista:

Ayuda urgente!!!!!!!!!!!

Publicado por Gema (7 intervenciones) el 04/04/2005 18:23:01
Wenas, estaba haciendo una calculadora cientifica, y oy cuando me la estaba viendo el profe, me ha dixo que cuando introduzca letras como sumandos (es decir numeros), no los pase a decimal y haga la operacion. necesito ayuda para saber si el usuario a introducido una letra o un numero y como consecuencia de eso, realizar las diferentes acciones.
espero la respuesta con la mayor brevedad. Un saludo
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:Ayuda urgente!!!!!!!!!!!

Publicado por fernando.gomez (1603 intervenciones) el 04/04/2005 18:37:55
La función isdigit te regresa true si el caracter pasado por parámetro es un número, false en caso contrario. La función isalpha regresa true si el caracter pasado como parámetro es alfanumérico, false en caso contrario. Saludos.
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:Ayuda urgente!!!!!!!!!!!

Publicado por Gema Alvarez (7 intervenciones) el 04/04/2005 19:01:19
Gracias. pero, por ejemplo:
case 1:
textcolor (10);
cprintf ("introduzca el primer numero:");
scanf ("%f", &num_1);
printf ("introduzca el segundo numero:");
scan ("%f", &num_2);
resultado=num_1+num_2;
printf ("resultado: %f", resultado);
break;
aqui como pondria esas funciones (isdigit o isalpha), para realizar esa suma. necesito contestacion con la mayor brevedad.un saludo
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:Ayuda urgente!!!!!!!!!!!

Publicado por Wireframe Beast (5 intervenciones) el 04/04/2005 20:17:00
Después de leer tus variables:

if(isdigit(num_1) && isdigit(num_2))
{
//Lo que tengas que hacer
}

Con esto te aseguras de que ambos sean dígitos, puedes hacer un switch para los diferentes casos.

De cualquier forma no deberías tener ningún problema ya que en C el char es compatible con el int y puedes hacer operaciones con ambos tipos de datos.
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:Ayuda urgente!!!!!!!!!!!

Publicado por Gema (7 intervenciones) el 04/04/2005 20:21:20
Muxas gracias
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:Ayuda urgente!!!!!!!!!!!

Publicado por Gema Alvarez (7 intervenciones) el 05/04/2005 08:49:44
Wenas, otra vez, mira ayer estuve probrando lo del isdigit y con numeros enteros funciona, pero no hay ninguna manera de hacerlo con float ??????. necesito respuesta con la mayor brevedad.
Un saludo.
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:Ayuda urgente!!!!!!!!!!!

Publicado por fernando.gomez (1603 intervenciones) el 06/04/2005 18:17:12
Bueno, te explico. isdigit lo que hace es que evalúa un caracter. Por ejemplo, isdigit('F') e isdigit('8') regresarán falso y verdadero respectivamente. Acuérdate que un caracter no es sino un número. Ahora bien, ¿por qué usar "int" en lugar de "char"? Bueno, esto tiene que ver con la configuración interna del sistema, concretamente con la función setlocale, que cambia diversas configuraciones del entorno (quizás el sistema operativo tiene un caracter mayor a char...).

Así, evidentemente no sería lógico tener una versión isdigit que evaluara floats, porque los caracteres son números enteros, no de punto flotante. Saludos.
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

PROGRAMA

Publicado por carlos (1 intervención) el 04/04/2005 23:03:10
HOLA LA VERDAD ES QUE ME URGE QUE ME AYUDEN A HACER UN PROGRAMA QUE HAGA EL METODO DE GAUSS, PARA ENTREGARLO HOY, ESPERO RESPUESTA... GRACIAS...
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