Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 Presentacin
A continuacin, se presenta una serie de ejercicios, los cuales son responsabilidad del alumno desarrollarlos en su totalidad
de forma personal y como trabajo de estudio. Desarrolle un algoritmo para cada una de las siguientes situaciones:
2 Algoritmos Simples
1. Desarrolle un programa que dado un numero (entero) por el usuario muestre por pantalla todos los divisores de dicho
nmero, por ejemplo, si se ingresa el nmero 2, sus divisores son el 1 y el 2.
2. Desarrollar un programa que dada una cantidad de nmeros (n, con ciclos iterativos de peticin y que terminan cuando
el usuario ingrese 0) guarde el impar mayor y el par menor y luego los muestre por pantalla. Para saber si es par o impar
deber desarrollar una funcin que arroje 0 si es par y 1 en caso contrario.
3. Dada la Longitud de dos lados de un tringulo cualquiera, encuentre y muestre por pantalla la longitud del tercer lado.
4. Hacer un programa que dado un nmero encuentre, si es posible, su equivalente en potencias. Por ejemplo: Para el 8
el equivalente seria 2**3.
5. Desarrolle un programa que dados 3 nmeros enteros, busque el mnimo comn mltiplo (M.C.M) entre ellos y lo
muestre por pantalla
6. Realice un programa que reciba una frase o texto ingresados por el usuario y que cuente la cantidad de coincidencias
para cada letra. Ej: Marta -> m=1; a=2; r=1; t=1.
7. Desarrolle un programa que calcule la siguiente sumatoria, con n y H ingresados por el usuario. La sumatoria se
calcular siempre y cuando el resultado no exceda H (ingresado), de manera que si el ndice K no pudo llegar hasta n ,el
programa mostrara hasta qu ndice lleg (antes de exceder el valor de H) y calcular el rango de error (diferencia) entre
el verdadero resultado de H y el que ha sido ingresado. **recuerde que el ndice n ingresado por el usuario tiene que ser
positivo y mayor que k de la misma manera que H, Haga las validaciones correspondientes.
8. Tenemos que un nmero Perfecto es cuando dicho nmero es resultado de la suma de sus divisores menos de el
mismo. Implemente una funcin de bsqueda de los divisores y Dado un numero entero positivo n ingresado por el
usuario (de 1 a 10) buscar la cantidad hasta n de nmeros perfectos.
9. Hacer un programa que calcule la siguiente expresin, dados n (numero entero positivo), b no mayor que 7 y c no
mayor que 3.
10. Escriba un programa que dndole el importe exacto de una cantidad te indica el mnimo nmero de monedas que
podras tener. Las monedas son de 5,10,50,100,500.
3 Arreglos:
1. De una lista de 50 nmeros enteros ingresados en un arreglo por el usuario (debe realizar llenado del arreglo), y un
nmero n, buscar y mostrar por pantalla cuantos nmeros en la lista de nmeros del arreglo son mltiplos del nmero n.
2. Desarrolle un programa que cuente la cantidad de letras ingresadas en un arreglo, estas deben ser contadas de forma
agrupadas segn el orden de la palabra y sus coincidencias. Ejemplo: arcoiris=arrcoiis, entonces tendramos slo 6
letras, tomando en cuenta que el arreglo debe ser ordenado antes de contar las letras.
3. De un arreglo A de caracteres (letras) de largo mximo 50, invertir sus valores en un arreglo B del mismo tamao. Luego
verificar si la palabra es palndrome (es decir se lee igual hacia adelante y hacia atrs) comparando los dos arreglos
simultneamente. Haga las restricciones necesarias para la entrada de los datos sin que afecte lo antes expuesto.
4. Ordenar un arreglo de tamao 10 de enteros ingresados por el usuario de menor a mayor, no se permite el uso de
arreglos auxiliares.
5. Reciba 10 notas guardadas en un arreglo y calcule el promedio de un alumno tomando en cuenta que se debe
preguntar el porcentaje que tiene cada nota (puede ser guardado en otro arreglo de igual tamao). Trabaje con los dos
arreglos simultneamente.
6. Se tiene un vector compactado de 50 nmeros enteros sume la 1 con la 2 casilla y gurdelo en la 3, sumando este
resultado al valor que ocupaba ese lugar (1+2=3 ; 3+4=5 ; 5+6=7). Repita la operacin en todo el arreglo. Ej:
1-2-3= 1-2-6
7. En el Aeropuerto de Santiago se manejan 15 puestos de estacionamiento (identificados por las letras del abecedario de
la A a la O), a su vez hay 15 aviones funcionando ese mismo da (que se identifican con su nmero de vuelo). El
Aeropuerto guarda adems la hora de llegada del vuelo, la hora de salida, la cantidad de pasajeros que ocupan el avin,
y el destino al cual se dirige.
Maneje 6 arreglos de diferentes tipos para guardar cada uno de estos datos y manejarlos se forma sincronizada. Se
pide que al preguntar por el estacionamiento diga el numero de vuelo que lo ocupa, Al preguntar por el numero de vuelo
diga la hora de salida, la hora de llegada, la cantidad de personas que ocupan el avin, el numero del estacionamiento y
el destino del avin, Y que al preguntar por un destino especfico muestre una lista con todos los aviones (n de vuelo)
que se dirigen ah.
8. Se tiene un arreglo de largo 25 de nmeros enteros que se maneja de manera compactada y ordenada. Se pide que
haga una funcin que permita eliminar un nmero especfico y mantener el arreglo compactado y otra funcin que
permita (si hay espacio disponible) agregar un nmero de forma ordenada sin perder ningn valor del arreglo. Considere
que en los lugares vacios se guardarn nmeros que se consideren nulos.
9. Se tiene un vector de largo 50 lleno de nmeros en el cual debe asumir que existen nmeros repetidos ya sea de forma
consecutiva o alternada. Se pide hacer un programa para listar por pantalla todos los nmeros distintos entre si, sin
utilizar arreglos auxiliares.
Ejemplo:
Si el arreglo es: | 5 | 4 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 2 | 5 | 3
Debe mostrar:
| 5 | 4 | 3 | 6 | 7 | 8 | 9 | 1 | 2
4 Anidacin Arreglos:
1. En un arreglo de largo 30 de estructuras tipo Info, se encuentran almacenados diversos datos de los miembros de un
club de fans. Se pide que elabore un programa que permita:
a.
b.
c.
Al ingresar las iniciales del nombre de uno de los integrantes mostrar todos sus datos.
Agregar o Eliminar del Vector de Pagos una cantidad especfica
Ordenar el vector en forma ascendente cada vez que el usuario ingrese un numero en el vector de pagos.
2. Se tiene un arreglo de largo 20 de arreglos (largo 10) que a su vez este ltimo es de estructuras tipo Trabajador. En el
primer arreglo cada celda representa un da hbil del mes (es decir trabajado), y cada da posee un arreglo que simboliza
a las personas que trabajaron (normalmente en esa empresa son 10) durante ese da. Se pide que con las estructuras
definidas posteriormente:
a.
b.
c.
3. Un vector de largo 5 de enteros que representan los nmeros sorteados de un juego de azar, est ubicado dentro de
otro vector de largo 4 que representa las veces que se sortean los nmeros al mes, a su vez este vector est ubicado
en uno de largo 12 que representan los meses del ao. Se pide que dado 5 nmeros busque la coincidencia en la
estructura y muestre por pantalla el nmero del sorteo, el mes en que fue sorteado y el nmero de la semana en que
ocurri.
5 Matrices:
1. Teniendo una matriz de nmeros enteros de dimensiones 10 x 10 (cuadrada) se pide desarrollar un algoritmo para
recorrer dicha matriz de forma espiral mostrando por pantalla el resultado de dicho recorrido.
2. Sumar una matriz cuadrada de tamao 6 x 6 con su transpuesta, y determinar si la resultante es simtrica (Matriz[i][j] ==
Matriz[j][i]).
3. Implementar una funcin para encontrar el nmero mayor y el menor de una matriz de enteros, debe considerar que el
tamao de la matriz, as como la matriz son recibidos por parmetro.
4. Ingresar una lista de 30 alumnos con ocho calificaciones cada uno. Mostrar aquellos alumnos con sus notas, cuyo
promedio sea igual o superior al promedio general, para ello debe hacer uso de las matrices y/o arreglos que se estime
conveniente.
5. Desarrolle un juego de combate naval que opere sobre una matriz de 10 x 10 con barcos que ocupan slo una
coordenada de la matriz, debiendo leerse las posiciones de los barcos desde un archivo de texto. Un adversario debe
efectuar un mximo de 40 disparos (indicando las coordenadas del disparo), y si en ella existe un barco se deber
indicar que el barco est hundido. Tras cada disparo los barcos deben desplazarse una posicin a la derecha. En caso
de ya estar en el extremo derecho pasa al extremo izquierdo dando la sensacin de continuidad.
6. Una compaa de gaseosas ordena sus pedidos en una matriz, una de sus dimensiones corresponden al nmero de
gaseosas que trabajan (en este caso serian 15 tipos), la segunda dimensin corresponde a la cantidad de clientes que
posee la empresa (155) en la matriz se guarda la cantidad de gaseosas de cada tipo que requiere un cliente es decir:
Cada celda de la matriz guardar un entero correspondiente a la cantidad de gaseosas que cada cliente requiere. De
acuerdo al ndice de esta matriz se sabr el tipo de gaseosa y el nmero del cliente.
cliente\gaseosa
coca
naranja
Limn
001
20
24
002
15
30
Se pide lo siguiente:
Mostrar por pantalla de manera ordenada (mostrar como tabla) los pedidos de los clientes tomando en cuenta que el
numero de los clientes se mostrar del 001 al 155 y que el tipo de gaseosas se identificar con letras A hasta O segn
del ndice (es decir, ndice 0 corresponde A).
a.
b.
c.
6 Anidacin Matrices-Arreglos:
1. Se tiene una matriz de 10x10 la que representa los asientos de una sala ordenados por fila/columna, en cada celda de
la matriz existe una estructura que simboliza a la persona que corresponde cada asiento, la estructura posee los datos
de dicha persona adems de un vector que guarda las horas en que esa persona estar ocupando el asiento. Se pide
que dado un nmero de asiento busque a la persona y muestre los datos por pantalla, adems de crear una funcin
que permita buscar un asiento disponible, si no existiese que muestre el que se desocupar ms pronto.
2. En un cibercaf de la ciudad las personas que entran deben registrarse para poder tener un control de los daos que
pudiesen ser causados en los equipos. Para esto se tiene una matriz tridimensional (tres dimensiones) que representa el
numero de computadores (25), las horas identificadas del 1 al 11 (son las horas que trabaja cada computador
diariamente), y las personas (con un tope de 100 por equipo). A su vez cada persona tiene un vector de las paginas
que ha visitado (el vector ser de enteros ya que cada pgina en la base de datos del cibercaf, est identificada con
un numero). Calcule el valor de la visita de una persona segn las horas que estuvo en el ciber, cree una funcin que
busque una persona segn el nombre y otra que muestre todos los usuarios de un computador en especfico.
Estructuras de datos:
struct Persona
{
char Nombre[50];
char Horain[6];
char Horaout[6];
int edad;
int paginas[20];
};
3. Se tiene un vector de largo 12 representando a las regiones del pas, cada celda posee un vector de largo 20 para las
ciudades de la regin y cada celda de ste a su vez posee un vector de largo 20 para las comunas de dicha ciudad.
En cada celda que representa a las comunas existe una matriz de 4x4 que guarda todos los cdigos postales de esa
comuna. Muestre por pantalla ordenado por regin-cuidad-comuna los cdigos postales (utilice nmeros para identificar
cada una de ellas) y cree una funcin que dado una regin-cuidad-comuna muestre los cdigos de esa zona.
Listar a todos los apoderados y sus hijos cuya deuda anual sea mayor que la pagada
Calcular las deudas de todos los alumnos y obtener lo que se le debe al jardn
Mostrar a todos los nios que estn al dia
Eliminar o modificar los datos de un nio.
6. Desarrollar un programa que permita girar una matriz nxm en 90 en sentido contrario a las agujas del reloj, el programa
debe permitir varios giros consecutivos. La matriz debe ser dinmica, y el proceso de giros debe realizarse en funciones,
adems determinar si la matriz es identidad.
Matriz Original
Matriz Girada en 90
Matriz Girada en 90 ms
7. Se define que una matriz cuadrada es "superiormente achurada en orden" si para la diagonal principal y para cada una
de las paralelas superiores a ella, se cumple que sus elementos se encuentran ordenados ascendentemente,
considerndolos de izquierda a derecha y de arriba hacia abajo (cada diagonal por separado). Por ejemplo:
Construya un algoritmo que, para una matriz cuadrada de N x N (con posiciones desde la 0 a la N-1 en filas y
columnas),llena con nmeros enteros ya ingresados, determine si cumple la propiedad de ser "superiormente achurada
en orden".
8. Se tiene que en un colegio de la Zona se organizan los profesores de la siguiente manera: En un vector dinmico de
estructuras, en cada celda del vector se guarda la informacin de un profesor, cada profesor posee nombre (char*), rut
(char*), especialidad (char*) y una matriz de semanas vs das (4x7). En cada celda de dicha matriz existe una estructura
que contiene horario (char*) y un vector dinmico de los cursos (char*) que tiene que dictar ese da. Se pide que a
travs de un men el programa haga lo siguiente:
a.
b.
c.
d.
e.
9. Realizar el proceso de multiplicacion de dos Matrices (dinamicas), tomando encuenta que el producto de dos matrices
se puede definir slo si el nmero de columnas de la matriz izquierda es el mismo que el nmero de filas de la matriz
derecha. Si A es una matriz mn y B es una matriz np, entonces su producto matricial AB es la matriz mp (m filas, p
columnas) dada por:
Por ejemplo:
10. Un Edificio se maneja en una matriz tridimensional (tres dimensiones) de estructuras. La primera dimensin hace
referencia a los pisos del edificio (10), la segunda y tercera dimensin se consideran como las 16 habitaciones que
posee cada piso (podemos imaginarnos una matriz de 4x4).
La Estructura se define:
struct habitacion
{
char* estado;
char* titular;
int n_de_ocupantes;
int n_de_camas;
};
Se pide:
a.
b.
c.
8 Listas:
11. Una lista doblemente enlazada tiene un puntero al siguiente nodo de la lista y otro al anterior, permitiendo recorrer la lista
en ambas direcciones. Defina y construya el ADT Lista Doblemente Enlazada (puede usar un nodo fantasma).
12. Una casa comercial maneja su lista de novios de una manera singular: cada persona ocupa un nodo dentro de una lista
simplemente enlazada, mantenindose siempre junta la pareja, primero el novio y a continuacin la novia. Si las parejas
se reconocen en la lista ordenadas de acuerdo con el apellido del novio, entonces:
a.
b.
c.
d.
13. Una empresa distribuidora utiliza una lista circular para definir la ruta que sigue su camin repartidor dentro de la ciudad.
En esta lista cada nodo representa un cruce de calles, con la excepcin del nodo apuntado por la cabeza de la lista,
que representa a la empresa misma.
Ruta
Se pide :
a.
b.
c.
14. Un mayorista guarda todas las ventas de los minoristas en una lista simplemente enlazada, donde cada nodo contiene
el RUT del minorista y el monto de la venta (un minorista puede figurar ms de una vez en la lista). A partir de esto se
desea construir otra lista ordenada por RUT, en que cada minorista figure una sola vez con el total de las ventas. Se
pide:
a.
b.
9 Anidacin Listas-Arreglos:
15. Una empresa que vende sus productos en el mercado nacional, mantiene su lista de distribuidores de la siguiente
forma: un arreglo de largo 13 representa las regiones del pas (Santiago es la regin 13), donde de cada posicin del
arreglo cuelga una lista de los distribuidores autorizados de la regin (cada distribuidor se identifica por un RUT). Se
pide:
a.
b.
c.
16. Para la utilizacin de la Tarjeta PrestaFacil se maneja un lista simplemente enlazada de clientes con los siguientes datos:
N de tarjeta, clave secreta, nombre del titular, un puntero a un adicional, Rut del titular, y una lista simplemente enlazada
de compras. Cada estructura de la lista de compras posee: nombre del producto, cdigo, precio normal, n de
cuotas, precio final, valor de cada cuota.
Tomando en cuenta que los trabajadores manejan el sistema, Desarrolle un programa que:
a.
b.
c.
d.
e.
17. Una Empresa de ventas de juegos de Nintendo Wii a nivel nacional, necesita un sistema bsico para manejar sus
sucursales, considerando que cuenta con numerosas sucursales en muchas regiones del pas, y que cada una de ellas
puede tener un listado n de ttulos (juegos que se encuentran disponibles en las tiendas). Sabiendo que se tiene: una
lista doblemente enlazada de ciudades, una lista contigua de punteros a sucursales, y una lista simple de ttulos se pide
implementar las siguientes funciones, y llamarlas a travs de un men en el main():
a.
b.
c.
d.
struct sucursal
{
char *direccin;
int codigo;
struct titulo *titulos;
struct sucursal *sig;
};
struct ciudad
{
char *nombre;
struct
sucursal
*sucur;
struct ciudad *ant;
struct ciudad *sig;
};
18. En una Reserva Natural se est comenzando a autorizar el camping. Se decidi registrar cada familia que entra al
camping y el lugar de la reserva que ocuparn para acampar. En una lista contigua se guarda el apellido del titular de la
familia y los datos de la familia en general (int integrantes, int automvil (0= si 1= no), char* apellido_titular, char*
lugar_camping, int fecha_in (ddmm), int fecha_out (ddmm)), de cada titular cuelga tambin una lista circular de los
acompaantes (familiares) donde se detallan los datos de cada integrante incluido el titular (nombre, parentesco con
titular, edad, Rut). De acuerdo a esto se pide:
10
a.
b.
c.
d.
e.
f.
19. La empresa Lomito maneja sus tiendas en un vector de punteros largo 4, donde cada celda representa a una de sus
tiendas (Heladerias Lomito, Desayunos Lomito, Lomito Comida Rpida, Lomito Express), a su vez de cada tienda cuelga
una lista doble de sucursales. Se pide:
a.
b.
c.
d.
e.
Matriz
a.
b.
c.
d.
21. En el Registro Civil para organizacin, se necesita registrar a cada persona que solicita un documento (certificados de
todo tipo, etc.). Para ello se necesita que cree las siguientes funciones:
11
a.
b.
c.
d.
struct Persona* crear()= crea el registro de una persona y sus datos y devuelve un puntero a ella.
struct Documento* solicitud()= crea una solicitud de un documento y retorna un puntero al mismo
void busqueda_solicitud (struct Persona** head, char* documento)= Busca en cada persona el tipo de documento
que solicit, si coincide con el documento buscado, muestra los datos de la persona por pantalla.
void unir_persona()=une a la lista de personas ordenandas por Rut una nueva persona creada.
struct Documento{
char* Nombre_documento;
char* Nombre_solicitado;
char* estado_doc;
int cantidad_doc;
int valor_unitario_doc;
int valor_transaccion;
struct Documento *sig;
};
10 Recursividad:
1. Desarrollar un programa que a travs del uso de funciones recursivas calcule si un numero es Perfecto (ejercicio n
10).
2. Desarrolle una funcin recursiva que halle el valor de la siguiente sumatoria, dado un valor aproximado de V. La
sumatoria se detendr cuando el valor total de sta sea menor o igual a V. Considere V y n ingresados por usuario.
100
n+1
V= n*n
K=1
3. La problemtica de las Torres de Hanoi, consiste en que hay tres postes: A, B y C. En el poste A se ponen n
discos de dimetro diferente de tal manera que un disco de dimetro mayor siempre queda bajo de uno de
dimetro menor. El objetivo es mover los discos al poste C usando B como auxiliar. Slo puede moverse el disco
superior de cualquier poste a otro poste, y un disco mayor jams puede quedar sobre uno menor, un ejemplo para
tres discos es la que se muestra en la figura:
12
4. Desarrollar un programa que a travs de recursividad invierta una palabra. Ejemplo: live=evil
5. Escribir una funcin recursiva que encuentre la altura de un rbol binario.
11 rboles:
6. En una Empresa los nombres y edades de todos los trabajadores se necesitan guardar para llevar un registro de
ellos. Luego deben mostrarse todos los trabajadores ordenados alfabticamente. Implemente un rbol binario.
7. Implemente un rbol lleno de valores enteros, en el que se pueda calcular el promedio de todos los valores
menores o iguales a un nmero ingresado por el usuario. El recorrido debe ser en pre-orden y de forma recursiva.
a.
b.
15
17
69
74
27
50
65
68
70
72
92
99
Insertar: 8-12-6-35-15-20-46-9-18-36-30-10-1
Eliminar: 35-20-46-1
13
10.Inserte en un ABB los siguientes datos de manera sucesiva: 2,1,4,3,6,5,8,7,9 y luego responda lo siguiente:
a.
b.
c.
d.
11.Implementar las funciones de recorrido que a continuacin se describen, de forma recursiva, para un AB de
nmeros (int numero), buscando un valor determinado, y cuando este sea encontrado retorne un puntero a l, de lo
contrario retorna NULL.
a.
b.
Recorrido in-orden
En un ABB, con post-orden.
12.En un rbol AB se guardan los nombres de los integrantes de una familia, es decir, el AB representa a un rbol
genealgico. Se pide que a travs del rbol, cree su representacin mediante tres vectores.
13.Del mismo rbol anterior, haga la representacin del AB mediante un vector de valores, recuerde que el hijo
derecho va en la posicin 2*i y el izquierdo 2*i+1.
14.En una farmacia se guardan los medicamentos en un rbol que posee la siguiente estructura:
struct Medicamentos
{
char* Nombre_Real;
char* nombre_publicitario;
char* laboratorio;
Char* Datos;
Int clave;
Int precio;
Struct Medicamentos *izq, *der;
};
Se pide que de acuerdo a la estructura dada, cree una funcin que transforme el rbol a un vector de estructuras.
15.Se tiene un rbol binario de bsqueda de punteros, ordenado por un cdigo de persona, usando las estructuras
inferiormente expuestas, determinar si un rbol binario de bsqueda es o no degenerado, tomando en
cuenta que debe implementar de forma obligatoria las funciones que se describen a posteriormente
a.
b.
struct persona *crear_persona(): crea un nodo a una persona y retorna un puntero a ella.
int insertar_nodo (struct abb **raiz, struct persona *nodo_nuevo): funcin recursiva que
c.
recibe el rbol, y el nodo que se desea insertar (persona), retorna 1 en caso de xito, 0 en caso de que ya
existe el elemento.
int abb_degenerado (struct abb *raiz, int lado): determina si un abb es degenerado por la
izquierda o por la derecha dependiendo de la opcion (1: izquierda, 2: derecha), recibe la raz del ABB y la
opcin del lado a verificar, esta funcin es iterativa.
14
16.La Asociacin Gremial De Transportes desea construir un rbol para organizar sus recorridos segn las ciudades,
sabiendo que el identificador de cada ciudad es su cdigo (cdigo de ciudad). Cada ciudad posee otro rbol de
las lneas que la recorren cuyo identificador es su nmero y a su vez cada lnea tiene un vector dinmico de
estructuras donde se guarda el valor de los pasajes (ejemplo: plan-cerro=$370)
Asociando tenemos un rbol de Asociacin Gremial de Transportes (ciudades) y de l cuelga otro rbol con las
lneas de cada ciudad, de cada lnea un vector dinmico de estructuras con el detalle de los precios. Se pide que:
a.
b.
c.
d.
e.
f.
g.
h.
i.
j.
k.
Calcular, mediante el algoritmo de Floyd, el camino mnimo desde cualquier vrtice (fuente) al vrtice (destino) 0
de dicho grafo, es decir el camino mnimo desde los vrtices 1, 2, 3 y 4 al vrtice 0. Mostrar para ello, la
secuencia de matrices de costes y la secuencia matrices de vrtices intermedios.
Calcular adems, cul es el vrtice del grafo que ms veces se considera como vrtice intermedio o de paso al
aplicar el algoritmo de Floyd. Justificar convenientemente la solucin.
15
12 Bsqueda y Ordenamiento:
18.Dado el siguiente enunciado, desarrolle la funcin de bsqueda secuencial. void busqueda_secuencial(int v[20],int
valor).
19.Implemente una Hashtable con funcin de hash (mod) y mediante un arreglo de listas simplemente enlazadas para
manejar las colisiones. A la Hashtable se le ingresan valores en el rango 1 a 100 y el arreglo es de largo 15.
Implementar las estructuras y las operaciones para agregar y eliminar valores de la Hashtable.
20.Desarrolle el algoritmo de la bsqueda binaria dado un nmero ingresado y un arreglo de largo 50.
21.Desarrolle un algoritmo que permita la insercin de un nmero en un arreglo con el mtodo de la baraja. El arreglo
debe estar ordenado de menor a mayor,
22.Desarrolle en C la funcin del mtodo Quicksort.
16