Ordenar una lista de números en JavaScript y en Python:
//Ordenar una lista de números de mayor a menor en javaScript//Funcion para ordenar una lista de números de mayor a menorfunctionsortHL(numbers) {
numbers.sort((a, b) => b - a)
return numbers
}
//Pedido de datosconst cantidad = parseInt(prompt('¿Cuántos números quiere ordenar de mayor a menor?'))
const numeros = []
for (let i = 0; i < cantidad; i++) {
numeros.push(parseFloat(prompt(`Introduzca el número (${i+1}/${cantidad})`)));
}
//Impresion de resultado
alert(`Números ordenados: ${numeros}`)
#Ordenar una lista de números de mayor a menor en javaScript#Funcion para ordenar una lista de números de mayor a menordefsortHL(numbers):
numbers.sort(reverse=True)
return numbers
#Pedido de datos
cantidad = int(input('¿Cuántos números quiere ordenar de mayor a menor?: '))
numeros = []
for i in range(0, cantidad):
numeros.append(float(input('Introduzca el número ({}/{}): '.format(i+1, cantidad))))
#Impresion de resultado
print('Números ordenados: {}'.format(sortHL(numeros)))
constn = prompt('Cuantos numeros quieres en tu lista?')
var lista = []
var magicNumber = 10
for(i = 0; i < n; i++) {
lista.push(Math.floor(Math.random() * magicNumber))
}
alert(`Tu lista de${n}:
${lista.sort(function (a, b){
return a - b;
})}`)```
defordenar_ascendente(lista_numeros, orden):for i in range(1, len(lista_numeros)):
valor_actual = lista_numeros[i]
posicion_actual = i
if orden == 'asc':
while posicion_actual > 0and lista_numeros[posicion_actual - 1] > valor_actual:
lista_numeros[posicion_actual] = lista_numeros[posicion_actual - 1]
posicion_actual -= 1elif orden == 'dsc':
while posicion_actual > 0and lista_numeros[posicion_actual - 1] < valor_actual:
lista_numeros[posicion_actual] = lista_numeros[posicion_actual - 1]
posicion_actual -= 1
lista_numeros[posicion_actual] = valor_actual
return lista_numeros
defobtener_numeros():
print('Inserta los números a ordenar. Inserta X para terminar de insertar.\n')
lista = []
num = 0while num != 'x':
num = input('Número: ')
num = num.lower()
if num != 'x':
num = float(num)
lista.append(num)
print(f'\nLista de números: {lista}')
return lista
if __name__ == "__main__":
print('''ORDENA TUS NUMEROS''')
lista = obtener_numeros()
orden = input('\n¿Cómo quieres ordenar los números? asc/dsc: ')
orden = orden.lower()
lista_ordenada = ordenar_ascendente(lista, orden)
print(f'\nLista ordenada: {lista_ordenada}')
publicclass OrdenarLista {
publicstaticvoid main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Ingresa el tamaño de la lista ");
int elements = scanner.nextInt();
Integer[] array = new Integer[elements];
for (int i = 0; i < array.length; i++) {
array[i] = scanner.nextInt();
}
//Ordenar de menor a mayor
Arrays.sort(array);
System.out.println(Arrays.toString(array));
//Ordenar de mayor a menor
Arrays.sort(array, Collections.reverseOrder());
System.out.println(Arrays.toString(array));
}
}
""" Programa que ordena una lista de 10 números aleatorios de mayor a menor y viceversa.
Program that orders a list of 10 random numbers from largest to smallest and vice versa. """
import random
if __name__ == "__main__":
input('Enter any key to generate a list of 10 random numbers: ')
random_list = []
for i inrange(0, 10):
random_number = random.randint(0, 100)
random_list.append(random_number)
print('Your random list: {}' .format(random_list))
print('Your listin ascending order: {}' .format(sorted(random_list)))
print('Your listin descending order: {}' .format(sorted(random_list, reverse=1)))
import random
tamanoLista = int(input('de que tamaño quieres la lista? '))
array = [random.randint(0,100) for i in range(tamanoLista)]
arrayOrg = sorted(array)
arrayOrg.reverse()
print(arrayOrg)
import random
defordena_numeros(lista_numeros):
lista_numeros.sort()
return lista_numeros
if __name__ == "__main__":
lista_numeros = [random.randint(0,100) for x in range(10)]
print(lista_numeros)
lista_ordenada = ordena_numeros(lista_numeros)
print(lista_ordenada)```
#PlatziCodingChallenge Día 17 - Solución al reto con JavaScript utilizando el algoritmo de la burbuja.
https://github.com/pahoalapizco/PlatziCodingChallenge/tree/day17
Código

Implementación
Resultado

Se que JS ya trae la función de sort(), pero aproveche para repasar el quicksort, aqui esta mi solución.
function reverseQuickSort(array){ let sortedArray = quickSort(array, 0, array.length -1); console.log(sortedArray.reverse()); } function quickSort(array, left, right){ if(left < right){ index = quickSortPartition(array, left, right); quickSort(array, left, index-1); quickSort(array, index + 1, right); } } function quickSortPartition(array, left, right){ let pivot = array[right]; let i = left; for (let j = left; j < array.length; j++) { if (array[j] < pivot) { swap(array, i, j); i++; } } swap(array, i, right); return i; } function swap(array, numA, numB) { let aux = array[numA]; array[numA] = array[numB]; array[numB] = aux; }```
Ordenar una lista de números en JavaScript y en Python:
//Ordenar una lista de números de mayor a menor en javaScript//Funcion para ordenar una lista de números de mayor a menorfunctionsortHL(numbers) { numbers.sort((a, b) => b - a) return numbers } //Pedido de datosconst cantidad = parseInt(prompt('¿Cuántos números quiere ordenar de mayor a menor?')) const numeros = [] for (let i = 0; i < cantidad; i++) { numeros.push(parseFloat(prompt(`Introduzca el número (${i+1}/${cantidad})`))); } //Impresion de resultado alert(`Números ordenados: ${numeros}`)
#Ordenar una lista de números de mayor a menor en javaScript#Funcion para ordenar una lista de números de mayor a menordefsortHL(numbers): numbers.sort(reverse=True) return numbers #Pedido de datos cantidad = int(input('¿Cuántos números quiere ordenar de mayor a menor?: ')) numeros = [] for i in range(0, cantidad): numeros.append(float(input('Introduzca el número ({}/{}): '.format(i+1, cantidad)))) #Impresion de resultado print('Números ordenados: {}'.format(sortHL(numeros)))
Para n numeros
Javascript
constn = prompt('Cuantos numeros quieres en tu lista?') var lista = [] var magicNumber = 10 for(i = 0; i < n; i++) { lista.push(Math.floor(Math.random() * magicNumber)) } alert(`Tu lista de${n}: ${lista.sort(function (a, b){ return a - b; })}`)```
#include <iostream> using namespace std;int main() { cout << "PROGRAMA ORDENADOR DE NUMEROS" << endl;int numero_ordenar; cout << "Ingrese la cantidad de numeros que desea ordenar: "; cin >> numero_ordenar;int vector_numeros[numero_ordenar], k = 1, j;for(int i = 0; i < numero_ordenar; i++) { cout << "Ingrese numero: "; cin >> j; vector_numeros[i] = j; k++; } int x, y;for(int i = 0; i < numero_ordenar; i++) { for(j = i + 1; j < numero_ordenar; j++) { x = vector_numeros[i] - vector_numeros[j];if(x < 0) { y = vector_numeros[j]; vector_numeros[j] = vector_numeros[i]; vector_numeros[i] = y; } } } cout << "Bien. Ahora sus numeros estarian ordenados de esta forma: " << endl;for(int i = 0; i < numero_ordenar; i++) { cout << " " << vector_numeros[i]; } return0; }
**Ordenar lista números aleatorios **
En Javascript:
var cantidad = 10; //digite la cantidad de num aleatorios a ordenarvar orden = ASC; // Defina orden. Ascendente = ASC o Descendente = DESCvar arrNum = []; //Numeros aleatoriosfor(let i = 0; i < cantidad; i++){ arrNum[i] = Math.round(Math.random()*(100-1)+parseInt(1)) } //llamamos funcion ordenamiento y pasamos tipo de ordenconsole.log(ordenarNumAleatorios(orden)) functionASC(arr){ for (let i = 0; i < arr.length; i++){ for (let j = 0; j < (arr.length - 1) - i; j++){ if (arr[j] > arr[j + 1]){ let temp = arr[j]; arr[j] = arr[j +1] arr[j +1]= temp } } } return arr; }; functionDESC(arr){ return ASC(arr).reverse(); } functionordenarNumAleatorios(callback){ return callback(arrNum); }
Resultado:
Cantidad = 10;
Orden = ASC;
6, 9, 20, 22, 29, 44, 62, 64, 64, 74
Cantidad = 10;
Orden = DESC;
88, 87, 83, 72, 71, 41, 37, 15, 8, 3
olvide comentarles que restringí los números aleatorios a que sean de 1 a 100, para este ejemplo.
Python con Insertion sort. 🐍🐍🐍
defordenar_ascendente(lista_numeros, orden):for i in range(1, len(lista_numeros)): valor_actual = lista_numeros[i] posicion_actual = i if orden == 'asc': while posicion_actual > 0and lista_numeros[posicion_actual - 1] > valor_actual: lista_numeros[posicion_actual] = lista_numeros[posicion_actual - 1] posicion_actual -= 1elif orden == 'dsc': while posicion_actual > 0and lista_numeros[posicion_actual - 1] < valor_actual: lista_numeros[posicion_actual] = lista_numeros[posicion_actual - 1] posicion_actual -= 1 lista_numeros[posicion_actual] = valor_actual return lista_numeros defobtener_numeros(): print('Inserta los números a ordenar. Inserta X para terminar de insertar.\n') lista = [] num = 0while num != 'x': num = input('Número: ') num = num.lower() if num != 'x': num = float(num) lista.append(num) print(f'\nLista de números: {lista}') return lista if __name__ == "__main__": print('''ORDENA TUS NUMEROS''') lista = obtener_numeros() orden = input('\n¿Cómo quieres ordenar los números? asc/dsc: ') orden = orden.lower() lista_ordenada = ordenar_ascendente(lista, orden) print(f'\nLista ordenada: {lista_ordenada}')
<code>
Utilizando las funciones de sorted Python
import random lista=[] foriin range(10): numero_aleatorio=random.randint(0,10000) lista.append(numero_aleatorio) print(lista) ordenado=sorted(lista) ordenadodes=sorted(lista, reverse=True) print(ordenado)print(ordenadodes)```
Ordenar una lista en Java ☕️ ☕️ 😃
publicclass OrdenarLista { publicstaticvoid main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Ingresa el tamaño de la lista "); int elements = scanner.nextInt(); Integer[] array = new Integer[elements]; for (int i = 0; i < array.length; i++) { array[i] = scanner.nextInt(); } //Ordenar de menor a mayor Arrays.sort(array); System.out.println(Arrays.toString(array)); //Ordenar de mayor a menor Arrays.sort(array, Collections.reverseOrder()); System.out.println(Arrays.toString(array)); } }
Resultado del programa

En Python:
""" Programa que ordena una lista de 10 números aleatorios de mayor a menor y viceversa. Program that orders a list of 10 random numbers from largest to smallest and vice versa. """ import random if __name__ == "__main__": input('Enter any key to generate a list of 10 random numbers: ') random_list = [] for i inrange(0, 10): random_number = random.randint(0, 100) random_list.append(random_number) print('Your random list: {}' .format(random_list)) print('Your listin ascending order: {}' .format(sorted(random_list))) print('Your listin descending order: {}' .format(sorted(random_list, reverse=1)))
Código en JS, C y C++.
https://github.com/ceporro/PlatziCodingChallenge
Java
public class Main { public static void main(String[] args) { generarArreglo(); } public static void generarArreglo(){ int [] numeros= new int[10];for (int i=0;i<numeros.length;i++) { numeros[i]=(int)(Math.random()*100); } System.out.println("Numeros del arreglo");for (int elemento: numeros) { System.out.println(elemento); } mayoraMenor(numeros); menoraMayor(numeros); } public static void mayoraMenor(int [] numeros){ for(int j=0;j<100;j++) {for (int i = 0; i < numeros.length; i++) {if (i > 0) { if (numeros[i] > numeros[i - 1]) { int comodin = numeros[i]; numeros[i] = numeros[i - 1]; numeros[i - 1] = comodin; } } } } System.out.println("Numeros acomodados de mayor a menor");for (int elemento:numeros) { System.out.println(elemento); } } public static void menoraMayor(int [] numeros){ for(int j=0;j<100;j++) {for (int i = 0; i < numeros.length; i++) {if (i > 0) { if (numeros[i] < numeros[i - 1]) { int comodin = numeros[i]; numeros[i] = numeros[i - 1]; numeros[i - 1] = comodin; } } } } System.out.println("Numeros acomodados de menor a mayor");for (int elemento:numeros) { System.out.println(elemento); } } }
import random tamanoLista = int(input('de que tamaño quieres la lista? ')) array = [random.randint(0,100) for i in range(tamanoLista)] arrayOrg = sorted(array) arrayOrg.reverse() print(arrayOrg)
Resuelto
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Lista de mayor a menor y viceversa</title></head><style> * { margin: 0; } .contenedor { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100vh; } .section { padding: 0.25rem2rem; } .inputs { display: inherit; align-items: center; padding: 2rem; } .btn { font-size: 36px; border: 2px solid black; border-radius: 6px; cursor: pointer; } #contra { padding: 020px; width: 95%; } </style><body><divclass="contenedor"><h1style="margin-bottom: 24px;">Presiona el boton "Click" para mostrar una lista, y luego su ordenada ascendente y viceversa</h1><buttononclick="escribe()"class="btn">Click</button><divstyle="margin-top: 24px;"id="lista"></div><divstyle="margin-top: 24px;"id="listaAsc"></div><divstyle="margin-top: 24px;"id="listaDesc"></div></div><script>functionescribe() { const lista = document.getElementById('lista') const listaAsc = document.getElementById('listaAsc') const listaDesc = document.getElementById('listaDesc') const list = [] for (let i = 0; i < 10; i++){ list.push(Math.round(Math.random()*1000)) } lista.innerHTML = `Lista al azar: ${list}` list.sort((a,b) => a - b) listaAsc.innerHTML = `Lista Ascendente: ${list}` list.sort((a,b) => b - a) listaDesc.innerHTML = `Lista Descendente: ${list}` } </script></body></html>
constrandom = () => { const LIMIT = 10; let allNumbers = [];for (let i = 0; i < LIMIT; i++) { allNumbers.push(Math.floor(Math.random() * 100)); } return allNumbers } const positiveNumbers = n => n.sort((a, b)=> a - b); console.log(positiveNumbers(random()));const negativeNumbers = n => n.sort((a, b) => b - a); console.log(negativeNumbers(random()))
Me acabo de dar cuenta que en vez de poner números de mayor a menor y viceversa, puse números negativos y positivos 😄
Listo UwU
Reto 17: Ordenar una lista de números de mayor a menor
Repositorio del reto: PlatziCodingChallengeRepo
GitHub pages: PlatziCodingChallengePages
function ordenarMayorMenor(lista) { for(let i=0; i<lista.length-1; i++){ for(let j=i+1; j<lista.length; j++){ if(lista[i] < lista[j]) { let num = lista[j]; lista[j] = lista[i]; lista[i] = num; } } } return lista; }
En Python:
import random defordena_numeros(lista_numeros): lista_numeros.sort() return lista_numeros if __name__ == "__main__": lista_numeros = [random.randint(0,100) for x in range(10)] print(lista_numeros) lista_ordenada = ordena_numeros(lista_numeros) print(lista_ordenada)```