Actualmente estoy intentando ordenar los valores ingresados por el usuario e imprimirlos de menor a mayor y luego de mayor a menor minimizando el uso de funciones integradas. Creo que mi código está en el camino correcto, sin embargo, en mi terminal, cuando mi código intenta presentar mis valores ingresados, mostrará el primer valor ingresado dos veces en la salida y luego omitirá el último valor ingresado en la salida.
Al ingresar esto en este sitio web, estoy empezando a pensar que tal vez mi problema es que no tuve la necesidad de crear las variables 'number1tem', 'number2tem' y 'number3tem'. Pero en su lugar ingrese algún tipo de función 'y' como:
if number1 <= highest and is => lowest:
number1 == middle
elif number2 <= highest and is => lowest:
number2 == middle
elif number3 <= highest and is => lowest:
number3 == middle
Sin embargo, no estoy seguro de cómo formatear la declaración 'y es'. O si esto realmente funcionaría.
Este es mi código completo:
number1 = input("Give me a number between 1 and 100:")
if number1 in range (0 - 100):
print ("your number is accepted")
number2= input("Give me another number between 1 and 100:")
if number2 in range (0 - 100):
print("your number is accepted")
number3= input("Give me another number between 1 and 100:")
if number3 in range (0 - 100):
print ("your number is accepted")
if number1 <= number2 and number3:
lowest = number1
elif number2 <= number1 and number3:
lowest = number2
elif number3 <= number1 and number2:
lowest = number3
if number1 >= number2 and number3:
highest = number1
elif number2 >= number1 and number3:
highest = number2
elif number3 >= number1 and number2:
highest = number3
if number1 <= highest:
number1tem = number1
elif number2 <= highest:
number2tem = number2
elif number3 <= highest:
number3tem = number3
if number1tem >= lowest:
middle = number1tem
elif number2tem >= lowest:
middle = number2tem
elif number3tem >= lowest:
middle = number3tem
print('Ascending order is:', lowest, middle, highest)
print('Descending order is:' highest, midddle, lowest)Probablemente necesites algo como esto:
#setup
num1 = 98 #you can get this with input()
num2 = 5 #you can get this with input()
num3 = 52 #you can get this with input()
nums = [num1, num2, num3]
maximum = num1
minimum = num1
#this gets the max and min
for n in nums:
if n < minimum:
minimum = n
if n > maximum:
maximum = n
for n in nums:
if n != maximum and n != minimum:
middle = n
print("increasing: ", minimum, middle, maximum)
print("decreasing: ", maximum, middle, minimum)
Producción:
increasing: 5 52 98
decreasing: 98 52 5