Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Docente. ISKANDAR ARNEODO - Fecha: 21 Mayo 2013 - Asignatura: PROGRAMACIN I - INGENIERA DE SISTEMAS E INFORMTICA - Seccin 01 - Semestre: I 2.013 - GUA PRCTICA NMERO 8 - ARREGLO CON METODO DE LA BURBUJA
/* Algoritmo de la burbuja (ordenacin de un vector) */ #include <stdio.h> #define LIM 15 main () { int i=0, j, tamanyo = 0, aux, cambio; int lista[LIM], lista2[LIM]; clrscr(); printf("Longitud del vector a ordenar: "); scanf ("%d ",&tamanyo); while (i<tamanyo) { i++; printf("Numero %d: ",i); scanf(" %d",&lista[i-1]); } /* MUESTRA EL VECTOR INTRODUCIDO */ printf("\n El vector introducido es el siguiente:\n"); printf("\n"); for (i=0; i<tamanyo; i++) printf(" %d ",lista[i]); printf("\n"); /* ALGORITMO DEL METODO DE LA BURBUJA*/ /*(ordenacion de un vector) (DE MAYOR A MENOR) */ cambio = 1; while (cambio == 1) { cambio = 0; for (i=0; i<tamanyo-1; i++) { if (lista[i] > lista[i+1]) { aux=lista[i]; lista[i]=lista[i+1]; lista[i+1]=aux; cambio = 1; } } } /* MUESTRA EL VECTOR ORDENADO */ printf("\n El vector Ordenado es el siguiente:\n"); printf("\n"); for (i=0; i<tamanyo; i++) printf(" %d ",lista[i]); printf("\n"); getch(); }/*FIN DEL PROGRAMA 1 de 2
UNIVERSIDAD NORORIENTAL PRIVADA GRAN MARISCAL DE AYACUCHO FACULTAD DE INGENIERA - ESCUELA DE INGENIERA
Docente. ISKANDAR ARNEODO - Fecha: 21 Mayo 2013 - Asignatura: PROGRAMACIN I - INGENIERA DE SISTEMAS E INFORMTICA - Seccin 01 - Semestre: I 2.013 - GUA PRCTICA NMERO 8 - ARREGLO CON METODO DE LA BURBUJA
/* ALGORITMO DEL METODO DE LA BURBUJA*/ /*(ordenacion de un vector) (DE MENOR A MAYOR) */ cambio = 1; while (cambio == 1) { cambio = 0; for (i=0; i<tamanyo-1; i++) { if (lista2[i] < lista2[i+1]) { aux=lista2[i]; lista2[i]=lista2[i+1]; lista2[i+1]=aux; cambio = 1; } } } printf("\n"); /* MUESTRA EL VECTOR ORDENADO (DE MAYOR A MENOR)*/ printf("\n El vector ordenado DE MAYOR A MENOR es el siguiente: \n "); printf("\n"); for (i=0; i<tamanyo; i++) printf(" %d ",lista2[i]); printf("\n"); printf("\n"); /* MUESTRA EL VECTOR ORDENADO (DE MENOR A MAYOR)*/ printf("\n El vector ordenado DE MENOR A MAYOR es el siguiente: \n "); printf("\n"); for (i=0; i<tamanyo; i++) printf(" %d ",lista[i]); printf("\n"); getch(); }
2 de 2
UNIVERSIDAD NORORIENTAL PRIVADA GRAN MARISCAL DE AYACUCHO FACULTAD DE INGENIERA - ESCUELA DE INGENIERA
Docente. ISKANDAR ARNEODO - Fecha: 21 Mayo 2013 - Asignatura: PROGRAMACIN I - INGENIERA DE SISTEMAS E INFORMTICA - Seccin 01 - Semestre: I 2.013 - GUA PRCTICA NMERO 8 - ARREGLO CON METODO DE LA BURBUJA
FUNCIONES
1. # include <stdio.h> intercambio(int p, int q) { int aux; aux = p; p = q; q = aux; printf("P = %d y Q = %d\n", p,q); } main() { int p = 12, q = 23; clrscr(); printf ("P = %d y Q = %d\n", p, q); intercambio(p,q); printf ("P = %d y Q = %d\n", p, q); getche(); } 2. #include<stdio.h> #include<conio.h> #define max 80 void main() { int nu[max], inv[max]; int n, i, j, ver, sum; clrscr(); puts("Cuantos Numeros va Ingresar: "); scanf("%d",&n); for(i=0; i<n; i++) { printf("\nIngrese el numero %d:", i+1); scanf("%d",&j); nu[i]=j; } printf("\nOrden de Entrada \n"); mostrar(nu, n); invertir(nu, inv, n); printf("\nOrden Invertido \n"); mostrar(inv, n); ver = verificar5(nu, n); if(ver == 1) 3 de 2
UNIVERSIDAD NORORIENTAL PRIVADA GRAN MARISCAL DE AYACUCHO FACULTAD DE INGENIERA - ESCUELA DE INGENIERA
Docente. ISKANDAR ARNEODO - Fecha: 21 Mayo 2013 - Asignatura: PROGRAMACIN I - INGENIERA DE SISTEMAS E INFORMTICA - Seccin 01 - Semestre: I 2.013 - GUA PRCTICA NMERO 8 - ARREGLO CON METODO DE LA BURBUJA
printf("\n EL NUMERO 5 SI ESTA EN LA LISTA \n"); sum = promedio(nu, n); printf("\nLa sumatoria de la lista es: %d", sum); getche(); } mostrar(int nu[max], int npal) { int i; printf("\n"); for(i=0;i<npal;i++) printf("%d\n",nu[i]); } invertir(int nu[max], int inv[max], int npal) { int i, j; j=npal-1; for(i=0;i<npal;i++) inv[j--] = nu[i]; } int verificar5(int nu[max], int npal) { int i, j=0; for(i=0;i<npal;i++) { if(nu[i]==5) j = 1; } return j; } int promedio(int nu[max], int npal) { int i, suma = 0; for(i = 0; i < npal; i++) { suma = suma + nu[i]; } return suma; }
UNIVERSIDAD NORORIENTAL PRIVADA GRAN MARISCAL DE AYACUCHO FACULTAD DE INGENIERA - ESCUELA DE INGENIERA
Docente. ISKANDAR ARNEODO - Fecha: 21 Mayo 2013 - Asignatura: PROGRAMACIN I - INGENIERA DE SISTEMAS E INFORMTICA - Seccin 01 - Semestre: I 2.013 - GUA PRCTICA NMERO 8 - ARREGLO CON METODO DE LA BURBUJA
void main() { int nu[max], inv[max]; int n, i, j, ver, sum; clrscr(); puts("Cuantos Numeros va Ingresar: "); scanf("%d",&n); ingresar(nu, n); printf("\nOrden de Entrada \n"); mostrar(nu, n); ordenarA(nu, n); printf("\nMATRIZ ORDENADA ASCENDENTE\n"); mostrar(nu, n); ordenarD(nu, n); printf("\nMATRIZ ORDENADA DESCENDENTE\n"); mostrar(nu, n); getche(); } ingresar(int nu[max], int npal) { int i, j; for(i=0; i<npal; i++) { printf("\n Ingrese el numero %d:", i+1); scanf("%d",&j); nu[i]=j; } } mostrar(int nu[max], int npal) { int i; printf("\n"); for(i=0;i<npal;i++) printf("%d\n",nu[i]); } ordenarA(int nu[max], int npal) { int i, cambio; int aux; cambio =1; while(cambio==1) { cambio =0; for(i=0; i <= npal-2; i++) { if (nu[i] > nu[i+1]) 5 de 2
UNIVERSIDAD NORORIENTAL PRIVADA GRAN MARISCAL DE AYACUCHO FACULTAD DE INGENIERA - ESCUELA DE INGENIERA
Docente. ISKANDAR ARNEODO - Fecha: 21 Mayo 2013 - Asignatura: PROGRAMACIN I - INGENIERA DE SISTEMAS E INFORMTICA - Seccin 01 - Semestre: I 2.013 - GUA PRCTICA NMERO 8 - ARREGLO CON METODO DE LA BURBUJA
{ aux = nu[i]; nu[i] = nu[i+1]; nu[i+1] = aux; cambio =1; } } } } ordenarD(int nu[max], int npal) { int i, cambio; int aux; cambio =1; while(cambio==1) { cambio =0; for(i=0; i <= npal-2; i++) { if (nu[i] < nu[i+1]) { aux = nu[i]; nu[i] = nu[i+1]; nu[i+1] = aux; cambio =1; } } } }
6 de 2