C/Visual C - Punteros!

 
Vista:

Punteros!

Publicado por Nicolas Eliaschev (21 intervenciones) el 05/09/2001 22:13:42
me dieron este ejercicio:
Hacer una funcion ORDENAR que riciba dos punteros a numeros reales y los ordene de menor a mayor,m alguien tiene idea de como hacerlo?
recien empiezo con punteros!
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:Punteros!

Publicado por Ismael (230 intervenciones) el 05/09/2001 22:44:48
...
int *a, *b;
printf("Intro valores de a y b:\n");
scanf("%d", a);
scanf("%d", b);
if(*a>*b)
printf("\n El mayor es a = %d", *a)
if(*a<*b)
printf("\n El mayor es b = %d", *b)
if(*a==*b)
printf("\nSon iguales");
......

a es la dirección de almacenamiento de la variable a
*a es el valor de la variable a almacenado en la dirección anterior
Aunque los if podrian ponerse más elegantemente con else,
espero que te sirva.
Si te interesan los punteros puedes ver un curso que elaboré yo, elemental, pero útil, según dicen. Está en www.elrincondelc.com
Un saludo

Ismael Camarero
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:Punteros!

Publicado por Nicolas Eliaschev (21 intervenciones) el 05/09/2001 22:56:16
Y una pregunta, eso lo entendi, pero, si hagos esos if en una funcion, como envio los 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:Punteros!

Publicado por Germán B. (27 intervenciones) el 06/09/2001 01:53:09
Si la intención era que el primer valor sea menor que el segundo, esto podría servir. Si encuentra que están "desordenados", invierte los valores. No hace falta enviar los datos explícitamente porque los maneja a través de punteros, modifica directamente las variables cuya dirección pasaste en la llamada a la función.
void ORDENAR(float *a, float *b) {
if(*a > *b) {
float x;
x=*b;
*b=*a;
*a=x;
}
}
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