Ejercicios: 1Eva2014TII_T3 Parasailing sin sobrecarga, parejas
El ejercicio consiste en una revisión ordenada del peso de cada persona a participar con una posible pareja.
| i | 1 | 2 | 3 | ... |
| pesos[i] | 120 | 180 | 165 | ... |
Los pesos de cada persona se registran en un arreglo.
# INGRESO
capacidad = int(input('capacidad de equipo: '))
n = int(input('personas en cola: '))
peso = np.zeros((n+1),dtype=int)
i = 1
while (i<=n):
peso[i] = int(input("Peso[ "+str(i)+"]:"))
i = i + 1
El algoritmo comienza revisando una persona i junto a otra persona j. Si la pareja no sobrecarga el paracaidas, se cuenta y registra la pareja posible de participar en un solo viaje de parasailing.
s = peso[i] + peso[j]
# revisa capacidad
if (s<=capacidad):
parejas = parejas + 1
posibles.append([i,j])
Use un contador y una lista para el registro.
Algoritmo en Python
# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 1Eva_IIT2014_T3 Parasailing sin sobrecarga, parejas
# propuesta solucion: edelros@espol.edu.ec
import numpy as np
# INGRESO
capacidad = int(input('capacidad de equipo: '))
n = int(input('personas en cola: '))
peso = np.zeros((n+1),dtype=int)
i = 1
while (i<=n):
peso[i] = int(input("Peso[ "+str(i)+"]:"))
i = i + 1
# PROCEDIMIENTO
# busca parejas
posibles = []
parejas = 0
i = 1
while (i<n):
j = i + 1
while (j<=n):
s = peso[i] + peso[j]
# revisa capacidad
if (s<=capacidad):
parejas = parejas + 1
posibles.append([i,j])
j = j + 1
i = i + 1
# SALIDA
print('La cantidad de parejas encontradas es: ')
print(parejas)
print('Se puede combinar: ')
print(posibles)
resultado del algoritmo
capacidad de equipo: 350
personas en cola: 3
Peso[ 1]:120
Peso[ 2]:180
Peso[ 3]:165
La cantidad de parejas encontradas es:
3
Se puede combinar:
[[1, 2], [1, 3], [2, 3]]
>>>
capacidad de equipo: 300
personas en cola: 3
Peso[ 1]:120
Peso[ 2]:180
Peso[ 3]:165
La cantidad de parejas encontradas es:
2
Se puede combinar:
[[1, 2], [1, 3]]
>>>
Diagrama de Flujo: Mientras-Repita


Diagrama de Flujo: Repita-Hasta

