jueves, 14 de junio de 2012

Problemas Propuestos de Ordenamiento y Busqueda


1)           Ingresar el orden y cada uno de los elementos de dos vectores numéricos. Si ambos vectores son de igual dimensión, clasificarlos simultáneamente, el primero en orden creciente y el segundo en orden decreciente.
2)       Ingresar el número de alumnos de una sección, luego ingresar los respectivos nombres, números de matricula y calificación en una asignatura. Se desea reportar tres listados consecutivos y ordenados: el primero en forma ascendente por número de matricula, el segundo alfabéticamente por nombre y el tercero en forma descendente por nota.
3)              Ingresar el orden y cada uno de los elementos de una matriz numérica. Luego ordenar dichos elementos en orden creciente (de izquierda a derecha y de arriba hacia abajo).
4)              Ingresar un conjunto de frases hasta que se indique el final del ingreso, luego ordenarlas y reportarlas en forma ascendente usando el método 1 de burbuja.
5)              Ingresar un número determinado de palabras y reportar las palabras ordenadas de forma descendente usando el método 2 de burbuja.
6)              Buscar en un vector de 100 elementos la ocurrencia de una clave de tipo carácter introducida por el usuario.
7)              Ingresar un conjunto de doce palabras. Luego, ingresar otra palabra, si ésta no es igual a alguna de las doce anteriores, el proceso será considerado como un error. Reportar el resultado.
8)              Ingresar una cadena de caracteres y luego introducir un carácter a buscar en la cadena. Reportar una subcadena formada desde el carácter encontrado hasta el final.
9)              Hacer un programa que permita ordenar alfabéticamente una lista de nombres de tamaño N considerado constante. El tamaño máximo de las cadenas considérela 20.
10)          Ingresar un vector de N posiciones y utilizar los algoritmos de ordenación por selección y burbuja, de modo que uno de ellos trabaje en sentido ascendente y el otro en sentido descendente.
11)          Elaborar un programa que genere un arreglo de 100 números aleatorios comprendidos entre 1 y 1000. Una vez generado, mostrar el contenido y después organizarlo de forma que estén juntos primero los elementos pares y luego los impares. Después, volver a mostrar el arreglo.
12)          Se desea ingresar una matriz de 5 × 20, ordenarla por una columna indicada, y luego reportar el nuevo resultado.
13)          Ingresar el número de operarios de una empresa y el porcentaje de descuentos debido a leyes sociales. Luego ingresar el nombre de cada operario, su salario básico por hora y el número de horas trabajadas en la semana, si éste último es 40 o menos horas no incluir el salario dominical. Ordenar los datos en forma alfabética de acuerdo a los nombres. Reportar el nombre, el salario bruto, el valor de los descuentos y el salario neto de cada trabajador.
14)          Ingresar el tamaño y los valores de los elementos de dos vectores denominados X[i] e Y[j]. Si ambos tienen el mismo número de elementos, ingresar el valor de una variable denominada XR, si éste es igual a uno de los elementos en X (XR = X[i], colocar Y[i] en YR, y reportar dicho valor (YR); si no es así, reportar el mensaje “VALOR NO ENCONTRADO”. En caso contrario, para cada vector, calcular y reportar las diferencias entre sus valores mayores y menores.
15)          Leer un conjunto de datos de hasta 200 nombres y números telefónicos que vienen dados en forma aleatoria. Las consultas pueden realizarse por nombre o por número telefónico.
16)          Se desea realizar un programa que realice las siguientes tareas:

A)           Ingresar una lista de números enteros
B)            Reportar dichos números.
C)            El programa deberá pedir si se desea ordenar en sentido decreciente o creciente (usar el método de selección)

17)          Codificar un programa que permita vía menú realizar las operaciones de ingreso, ordenación y búsqueda sobre un vector de 120 números reales. La operación de ordenación puede ofrecer un submenú con diferentes algoritmos y/o sentido de la ordenación. La búsqueda debe ser inteligente: antes de haber ordenado el vector (el último cargado), entonces se utiliza el algoritmo de búsqueda lineal, mientras que si el vector está ordenado, se utiliza búsqueda dicotómica.
18)          Realizar un programa que permita al usuario cargar 35 números enteros en un vector y decidir mediante un menú qué método de ordenación utilizar y si el orden debe ser ascendente o descendente. Implementar todos los métodos de ordenación que Ud. conozca. El programa deberá visualizar los números ordenados y volver al menú. Incluir una opción que permita finalizar la ejecución.
19)          Hacer un programa que permita mostrar los resultados de un concurso, en donde se muestren los nombres de los equipos, los resultados de las pruebas A, B, C, y D y la media aritmética de los mismos, ordenados descendentemente por la media aritmética. Usar el método Shell para ordenar los resultados. El ganador es el equipo que tiene la media más alta.
20)          Hacer un programa que permita ordenar una matriz numérica de 2 dimensiones en forma ascendente, usando el método Shell. Ejemplo: La siguiente matriz numérica de 2 dimensiones:

2    4   16
1    8     9
3    5   10

debe quedar ordenada en forma ascendente:

1     2     3
4     5     8
9   10   16

21)          En una matriz de 20×10 ingresar 20 palabras, a razón de una palabra por fila, de modo que en cada elemento de la fila haya una sola letra; si una palabra no llega a 10 letras, la fila se completa con blancos. Ordenar las filas de la matriz de modo que las palabras ingresadas puedan leerse en orden alfabético de arriba hacia abajo. Reportar la matriz ordenada.
22)          Hacer un programa que permita ordenar una matriz numérica de 2 dimensiones en forma descendente, usando el método de Shell. Ejemplo: La siguiente matriz de 2 dimensiones numérica:

2    4   16
1    8     9
3    5   10

debe quedar ordenada en forma descendente:

16   10    9
  8     5    4
  3       1

No hay comentarios:

Publicar un comentario