Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //gcc 5.4.0
- //Librerias
- #include <stdio.h>
- #include <math.h>
- //Declaración Global del tipo montana
- typedef struct montana {
- int numMontana; //Almacena número montaña
- float altura; //Almacena altura montaña
- float distancia; //Almacena distancia entre base montañistas y montaña
- float costo; //Almacena costo de escalar montaña
- } Montana;
- int main(){ //Inicio del Main
- //Declaración de Variables
- int cantM, i, j;
- float aux;
- Montana vector[40+1];
- do{
- scanf("%d",&cantM); //ingreso de la variable cantM
- }while((cantM < 1)&&(cantM > 40));
- for(i = 0; i < cantM; i++){ //Rellenar el vector
- vector[i].numMontana = i+1;
- scanf("%f",&vector[i].altura);
- scanf("%f",&vector[i].distancia);
- vector[i].costo = ((vector[i].altura) + (vector[i].distancia));
- }
- for(i = 0; i < cantM; i++){ //Se recorre el vector comparando si es mayor y se intercambian
- //los valores entre ellos para que así, esten ordenados
- for(j = 0; j < (cantM-1); j++){
- if(vector[i].costo > vector[j].costo){
- aux = vector[i].costo;
- vector[i].costo = vector[j].costo;
- vector[j].costo = aux;
- aux = vector[i].altura;
- vector[i].altura = vector[j].altura;
- vector[j].altura = aux;
- aux = vector[i].distancia;
- vector[i].distancia = vector[j].distancia;
- vector[j].distancia = aux;
- aux = vector[i].numMontana;
- vector[i].numMontana = vector[j].numMontana;
- vector[j].numMontana = aux;
- }
- }
- }
- for(i = 0; i < cantM; i++){ //Impresión de los datos
- printf("%14d %14.2f %14.2f %14.2f\n", vector[i].numMontana, vector[i].altura, vector[i].distancia, vector[i].costo);
- }
- return 0; //Fin del Main
- }
Advertisement
Add Comment
Please, Sign In to add comment