#include <iostream>
long count;
int *arreglo(int n) {
int *a = new int[n];
for (int i = 0; i < n; i++) a[i] = rand() % (10 * n) + 1;
return a;
}
void print(int *a, int n) {
for (int i = 0; i < n; i++) printf ("%i ", a[i]);
printf( "\n");
}
void swap(int &a, int &b) {
int c = a;
a = b;
b = c;
}
int max (int *a, int n) {
int m = 0;
// int i = 1;
for(int i = 1; i <= n; i++) {
count ++;
if (a[m] < a[i]) m = i;
}
// i++;
return m;
}
void seleccion(int *a, int n){
for (int k = n-1; k > 0; k--){
int m = max(a, k);
swap(a[k], a[m]);
}
}
int main() {
srand (time(nullptr));
int n = 100;
int *a = arreglo(n);
print(a, n);
count = 0;
seleccion(a, n);
printf ("\n\nArreglo ordenado: \n");
print(a, n);
// int m = max(a, n);
// printf("\n la mayor variable esta en %i y es igual a %i\n", m, a[m]);
printf ("\nEsfuerzo: %ld", count);
return 0;
}
For further actions, you may consider blocking this person and/or reporting abuse
Top comments (0)