Logo Studenta

ordenacion

Esta es una vista previa del archivo. Inicie sesión para ver el archivo original

#include <stdio.h>
#define N 5
int tabla_ordenada(int tabla[]){
 int i = 0;
 int cond = 1;
 while(cond == 1 && i < N){
 if(tabla[i] > tabla[i+1]){
 cond = 0;
 }
 i += 1;
 }
 return cond;
}
void ordenar_tabla(int t[]){
 int i,p;
 int aux;
 i = 0;
 while(i != N){
 p = i +1;
 while (1 < p && t[p-1] > t[p]){
 aux = t[p-1];
 t[p-1] = t[p];
 t[p] = aux;
 p = p -1;
 }
 if (t[p-1] > t[p]){
 aux = t[0];
 t[0] = t[1];
 t[1] = aux;
 }
 i = i +1;
 }
}
int main() {
 int entero;
 int tabla[N];
 printf("Introduce 7 valores\n");
 for(int i = 0; i<N; i++){
 printf("Elemento %i de la secuencia: ", i);
 scanf("%i", &entero);
 }
 if(tabla_ordenada(tabla) == 1){
 printf("La secuencia NO esta ordenada\n");
 printf("Ordenando...\n");
 ordenar_tabla(tabla);
 if(tabla_ordenada(tabla)==0)
 printf("La secuencia SI esta ordenada\n");
 }else{
 printf("La secuencia SI esta ordenada\n");
 }
 return 0;
}

Otros materiales