ayuda con pringao en c

A

pues que tengo que hacer un programilla que me dice que lea el nombre y edad de 10 personas y diga el nombre de la mas mayor y la mas pequeña...

como coño hago para demostrar que una es mas mayor ke las demas? :S:S:S me e kedao blokeado jaja aver si sabeis algo.

^!

Santii

con un array, de dos posiciones, donde en un pillas el nombre y en el otro la edad, dos variables max min, donde min = 150 por ejem y max=0, luego otro vector para guardar la posicion en la que esta y con un for vas comparando y si es mayor/menor pues lo guardas y sino pues al siguiente, y luego ya sabiendo la posicion esta todo exo :P

A

ya, pero no puedo usar arrays, no les hemos dado en clase todavia xdd

tiene ke ser con bucles

Fr4nk0

Pues es la misma idea que te han comentado anteriormente. Una variable donde guardas nombre y edad del que acabas de leer por teclado (que serán 10 personas según has dicho), y luego dos variables NombreMayor (donde guardaremos el nombre del mayor) y edadMayor (que será donde guardemos la edad del mayor. Esta variable la inicializas a 0). Luego haces un for de 0 a 9 (es decir 10 veces), donde pides por teclado el nombre (lo guardas en una variable que sea nombre), y edad(lo guardas en una variable que sea edad). Ahora si la edad es mayor que edadMayor pues edadMayor=edad y NombreMayor = nombre.
Aquí termina el bucle, y no tienes más que imprimir por pantalla NombreMayor y edadMayor para saber el nombre (y la edad) del más mayor de los 10 que has introducido.
Para la más pequeña igual.

Una cosa así:

#define cadena char[256]

void main(void){
cadena nombre, nombreMayor, nombreMenor;
int edad, edadMayor, edadMenor, i;
edadMayor=0;
edadMenor=200;
for(i=0;i<10;i++){
printf("Introduzca nombre:");
scanf("%s", &nombre);
printf("Introduzca edad:");
scanf("%d", &edad);

if(edad>edadMayor){
edadMayor=edad;
strcpy(nombreMayor, nombre); //Para copiar cadenas. Se le pasa la referencia, pero al ser
//nombreMayor y nombre arrays, ya son una referencia (una direccion de memoria).
}

else if(edad<edadMenor){
edadMenor=edad;
strcpy(nombreMenor, nombre);
}
}//Fin bucle

printf("Nombre del mayor: %s . Edad: %d\n", nombreMayor, edadMayor);
printf("Nombre del menor: %s. Edad: %d\n", nombreMenor, edadMenor);

}//Fin Main.

Soltrac

Algo asi:

mayor = 0
nombremayor = ""
menor = 999
nombremenor = ""
i=1

mientras i <= 10

Leer nombre y edad
Si edad < menor
menor = edad
nombremenor = nombre
fin si

Si edad > mayor
mayor = edad
nombremayor = nombre
fin si

i = i + 1

fin mientras

Imprimir menornombre, menor
Imprimir mayornombre, mayor

Edit:
JAJAJAJa se me adelantó #4 :P

A

gracias !!

Fyn4r

#5 y no es más fácil con un for?, es que los while me dan asquete xDDD

JuAn4k4

#5 Y si el menor de todos tiene 1023 años que ?

O mejor, si estas poniendo bebes, y dices que tiene 0.5 años ( 6 meses ) y resulta que es el mayor de todos !

nombremayor = ""
nombremenor = ""

Leer nombre y edad
nombremayor = nombre
nombremenor = nombre
mayor = edad
menor = edad

i=1
mientras i <= 9

Leer nombre y edad
Si edad < menor
menor = edad
nombremenor = nombre
fin si

Si edad > mayor
mayor = edad
nombremayor = nombre
fin si

i = i + 1

fin mientras

Imprimir menornombre, menor
Imprimir mayornombre, mayor

B

Foro Hacedme las practicas del modulo/facultad +1.

Creo que hay un miedo general a preguntar dudas al profesorado.

A

sisiisis, en navidad voy a clase y le pregunto al profesor no?

Puni

no se tus profesores, pero los mios suelen tener emails q responden con dudas ^^

Angel89

estructuras >>> xD

Usuarios habituales