Practico 0 Ejercicio 5 |Algoritmo de Ordenacion

Practico 0 Ejercicio 5 |Algoritmo de Ordenacion

de Diego Ismael Marichal Chavez -
Número de respuestas: 2

Hola, queria saber si este algoritmo de ordenacion es correcto, lo pense igual que en prog 1 cuando nos ponian un ejercicio similar. Adjunto el ejercicio.

void OrdenarArreglo(int & arr[10],int largo) {

int aux;

for (int i = 0, i <= largo, i++)

for (int j = i, j <= largo, j++)

if(arr[j] < arr[i]){

aux = arr[i];

arr[i] = arr[j];

arr[j] = aux;

}

}


Saludos y muchas grtacias

Diego : D

En respuesta a Diego Ismael Marichal Chavez

Re: Practico 0 Ejercicio 5 |Algoritmo de Ordenacion

de Matias Richart -
Hola Diego.

El algoritmo es correcto.
Sin embargo, hay algunos detalles del lenguaje a corregir.
Los parámetros del for se separan con ; (punto y coma).
El parámetro "int & arr[10]" no es correcto. La idea del & es pasar el arreglo por referencia?
En ese caso, eso no es necesario y está mal. En C, los arreglos siempre se pasan por referencia, es decir que si modificas un arreglo dentro de una función, modificas el arreglo original.
Además, estas 3 definiciones de la función son equivalentes y todas definen que lo que se recibe es un arreglo:
void OrdenarArreglo(int arr[10], int largo)
void OrdenarArreglo(int arr[], int largo)
void OrdenarArreglo(int * arr, int largo)

Saludos