P. 1
ProblemarioProgramaciónI_II

ProblemarioProgramaciónI_II

|Views: 2.539|Likes:
Publicado porronromero

More info:

Published by: ronromero on May 06, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/28/2013

pdf

text

original

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Ejercicios Básicos
1. 2. Escriba un programa en que dados tres números a, b y c imprima el menor de ellos. Escriba un programa que lea dos números a y b, calcule e imprima su producto, cociente y el resto cuando el primero se divide por el segundo. 3. Escribir un programa para convertir una medida dada en pies a su equivalente en a) pulgadas, b) centímetros y d) metros, conociendo que 1 pie = 12 pulgadas, 1 pulgada = 2.54 cm y 1 m = 100 cm. 4. En una empresa de computadoras, los salarios de los empleados se van a aumentar según su contrato actual según la siguiente tabla: Contrato 0 a 100.000 Bs. 100.001 a 150.000 Bs. 150.001 a 300.000 Bs. más de 300.001 Bs. Escribir un programa que solicite el salario Aumento % 20 10 05 00 actual del empleado, calcule y

visualice el nuevo salario. 5. Escriba un programa para hallar las raíces de una Ecuación de Segundo Grado. Se deben leer los valores de los coeficientes a, b y c. 6. Escriba un programa que dado un precio de un producto y una cantidad para pagarlo, calcule la cantidad de monedas y billetes (vuelto a devolver). Monedas: 1, 2, 5, 10, 20, 50, 100, 500, Billetes: 1.000, 2.000, 5.000 y 10.000 Bs. Considere que debe de darse la menor cantidad de billetes y monedas. 7. Escriba un programa que determine el monto a pagar por una llamada telefónica, teniendo en cuenta lo siguiente: Toda llamada que dure hasta 3 minutos tiene un costo de 25 Bs. Por cada minuto adicional se cobra una tarifa de 22,50 Bs. Se debe leer el tiempo de llamada. 8. Escriba un programa que lea una secuencia de números enteros y calcule el mayor, menor y el promedio de la secuencia. La secuencia termina cuando se ingresa el número cero (El cero no es tomado en cuenta). 9. Escriba un programa que dado tres números enteros indique cual es el mayor, el menor y el intermedio. 10. Escriba un programa que dados tres números y que los imprima en orden ascendente.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

11.

Escriba un programa que calcule la suma de la Serie Armónica. La serie está definida de la siguiente manera: por el usuario. 1 + 1/2 + 1/3 +...+ 1/n. El valor de n será suministrado

12.

Escriba un programa que encuentre los factores divisibles mínimos de un número (Descomposición del Número en sus Factores Primos Mínimos).

13.

Escriba un programa que encuentre el primer valor de n para el cual la siguiente suma excede a un valor x: 1 + 2 + 3 +...+ n. Por Ejemplo: Para un X = 10, el n que exceda a 10 es 5, porque 1 + 2 + 3 + 4 + 5 = 15.

14. 15.

Escriba un programa que dado un número n, determine si este es par o impar. Escriba un programa para determinar la cantidad de dígitos que tiene un número entero positivo dado.

16.

Escriba un programa para determinar la cantidad de dígitos diferentes que tiene un número entero positivo dado.

17. 18.

Escriba un programa que dado un carácter car, determine si este es una vocal o no. Escriba un programa que dado un carácter car, determine si este es un dígito entre '0' ... '9'.

19.

Escriba un programa que imprima los 100 primeros números naturales y la suma de los mismos.

20. 21. 22.

Escriba un programa que multiplique dos números por medio de sumas sucesivas. Escriba un programa que divida dos números por medio de restas sucesivas. Escriba un programa que calcule el MCD (máximo común divisor) de dos números por el algoritmo de Euclides.

23.

Escriba un programa que dado dos números enteros a y b realice la operación de b potencia a .

24. 25. 26.

Escriba un programa para determinar si un valor n es un número primo. Escriba un programa que permita la impresión de los primeros N números primos. Escriba un programa que dado dos números x y n, permita calcular la suma de la progresión geométrica: 1 + x + x 2 n +...+ x . 2 + 3/2 3 n +...+ n/2 .

27. 28.

Escriba un programa que permita calcular la serie: 1/2 + 2/2

Escriba un programa que determine si un valor n es un número perfecto. Un número perfecto es un entero positivo, que es igual a la suma perfecto, ya que 1+2 + 3 = 6. de todos los enteros positivos (excluido el mismo) que son divisores del número. Ejemplo: 6 es un número

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

29.

Escriba un programa que lea una secuencia de caracteres y determine el número de vocales leídas. La secuencia terminará cuando se lea el carácter punto (.). La lectura debe hacerse con la función READKEY provista por Turbo Pascal.

30.

Escriba un programa que lea una frase e imprima cada palabra y su tamaño o longitud en líneas diferentes. El texto es leído carácter a carácter y finaliza cuando se ingrese el carácter punto (.).

31.

Escriba un programa que lea un Texto y cuenta la frecuencia de un carácter n. La secuencia terminará cuando se lea el carácter punto (.).

32.

Escriba un programa que lea una frase en una variable string y sustituya todas las secuencias de dos o más blancos por un sólo blanco y visualice la frase obtenida.

33.

Escriba un programa que realice la lectura de un Texto (carácter por carácter) e indique la cantidad de palabras que tienen más de 10 caracteres, donde las palabras pueden ser separadas por uno o más espacios en blancos.

34. 35.

Escriba un programa que permita determinar si una palabra es palíndrome. Escriba un programa que determine si un año es bisiesto. Un año es bisiesto si es múltiplo de 4, excepto los múltiplos de 100 que no son bisiestos salvo que a su vez también sean múltiplos de 400 (1800 no es bisiesto, 2000 sí).

36. 37. 38.

Escriba un programa que permita calcular el factorial de un número n. Escriba un programa que dado un número entero positivo produzca el número invertido. Escriba un programa que permita verificar si un número entero es capicúa (Similar al concepto de palíndrome pero en las cadenas de caracteres).

39.

Escriba un programa que permita contar el número de caracteres de una cadena de texto ingresada por teclado. La secuencia terminará cuando se lea el carácter punto (.).

40.

Escriba un programa que dada una cadena de fecha en el formato "dd mm aaaa" devuelva su correspondiente en texto. Ejemplo: Para la fecha "17 11 1998" el valor en texto es "17 Noviembre 1998".

41.

Escriba un programa que cuente el número de veces que cada vocal se repite en un texto. El texto debe leerse carácter a carácter y finaliza al encontrar el carácter punto (.).

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Ejercicios de Funciones y Procedimientos
1. 2. 3. Escriba una rutina que reciba un carácter y determine si este es una vocal. Escriba una rutina que permita verificar si un número n es par o impar. Escriba una rutina que permita intercambiar los valores de dos variables a y b (enteras o reales) sin usar una variable temporal. 4. Escriba una función lógica que reciba un carácter y determine si este es un dígito de '0'..'9'. 5. Escriba una rutina que reciba como parámetro una cadena cad y una variable ch de tipo char. La función devolverá la posición de la primera ocurrencia de ch en cad. 6. Escriba una rutina que reciba como parámetro una cadena cad y una variable ch de tipo char. La función devolverá la posición de la última ocurrencia de ch en cad. 7. Escriba una rutina que reciba una cadena de caracteres y devuelva la cadena

invertida. 8. Escriba una rutina que reciba una letra y devuelva la correspondiente en mayúsculas. Debe validarse si el carácter recibido no es una letra minúscula, en cuyo caso se devuelve el mismo carácter. 9. Escriba una rutina que reciba una cadena cad y devuelva los caracteres de cad en mayúsculas. 10. Escriba una rutina que reciba una cadena cad y devuelva los caracteres de cad en minúsculas. 11. 12. Escriba una rutina que permita concatenar dos cadenas de caracteres. Escriba una rutina que reciba dos cadenas, cad1, cad2 y una posición p. La función retorna la posición de la primera ocurrencia de cad1 en cad2 a partir de la posición p. 13. Escriba una rutina que permita eliminar una secuencia de caracteres dentro de un string a partir de una determinada posición, un número determinado de dígitos o caracteres. 14. Escriba una rutina que permita remplazar una secuencia de caracteres dentro de un string n veces, pero la sustitución se realiza en forma inversa, desde el final hasta el inicio del string.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

15.

Escriba una rutina que devuelva la palabra más larga de un texto y la cantidad de palabras leídas. El texto debe leerse carácter a carácter y finaliza al encontrar el carácter punto (.). Las palabras están separadas por uno o más blancos.

16.

Escriba una rutina que reciba una secuencia de caracteres cad y retorne la cadena de caracteres sin espacios en blanco a la izquierda del string. Por ejemplo: ' Hola', debe retornar: 'Hola'.

17.

Escriba una rutina que reciba una secuencia de caracteres cad y retorne la cadena de caracteres sin caracteres en blanco a la derecha del string. Por ejemplo: 'Hola ', debe retornar: 'Hola'.

18.

Escriba una rutina que reciba una secuencia de caracteres cad y retorne la cadena de caracteres sin caracteres en blanco tanto a la izquierda como a la derecha del string. Por ejemplo: ' Hola que ', debe retornar: 'Hola'. utilice un procedimiento para convertir coordenadas

19.

Escribir

una

rutina

rectangulares a polares. La única función que retorna el arco del ángulo en Pascal es el ArcTan(Tan( )) y el valor resultante se encuentra expresado en Radianes. Radianes = Grados * 3,141503658 / 180.
P(x,y) r x = r * cos( ) y = r * sen( )

20. 21. 22. 23. 24. 25.

Escribir una rutina que calcule el Factorial de un número n dado. Escribir una rutina que calcule I-ésimo elemento de la Serie Fibbonacci. Escribir una rutina que indique si un número es primo o no. Escribir una rutina que calcule el I-ésimo elemento de los número primos. Escribir una rutina para verificar si un año es bisiesto. Escribir una rutina que permita eliminar una secuencia de caracteres dentro de un string a partir de una determinada posición, un número determinado de dígitos o caracteres.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Ejercicios de Vectores
1. Escriba un programa que cuente el número de veces que cada letra del abecedario se repite en un texto. El texto debe leerse carácter a carácter y finaliza al encontrar el carácter punto (.). 2. Escriba un programa que cuente el número de veces que cada dígito numérico

('0’..'9') se repite en un texto. El texto debe leerse carácter a carácter y finaliza al encontrar el carácter punto (.). 3. Escriba un programa que cuente el número de veces que cada vocal se repite en un texto. El texto debe leerse carácter a carácter y finaliza al encontrar el carácter punto (.). 4. Escriba una función que cuente las palabras de (n) letras que haya en un texto. El texto debe leerse carácter a carácter y finaliza al encontrar el carácter punto (.). Las palabras están separadas por uno o más blancos. 5. Escriba un programa que lea una secuencia de números enteros, calcule el promedio, así como el elemento mínimo y máximo de la secuencia. 6. Escriba una función que verifique si un número entero es capicúa. Un número capicúa es aquel que al invertirse es igual al número original. Nota: Usar Arreglos. 7. Escriba una función que verifique si dos vectores de (n) y (m) enteros

respectivamente son disjuntos, es decir que difieren a lo menos en un valor. Los vectores no se encuentran ordenados. 8. 9. Escriba una función que reciba un vector de números reales y lo invierta. Escriba una función que reciba un vector de números enteros que puede contener elementos duplicados. La función debe sustituir cada valor repetido por -5. 10. Escriba un programa que lea (n) números enteros y los vaya ordenando en forma ascendente en un arreglo, mientras los va leyendo (Ordenación Por Inserción). 11. Escriba una función que reciba dos vectores de números reales A y B ordenados ascendentemente y los ordene en otro vector C (Ordenación por Mezcla). 12. Escriba un programa que lea un arreglo A de (n) elementos enteros y luego un número k. Si k = 1 ordenar A descendentemente, si k > n ordenar A ascendentemente y si 1 < k < n ordenar en forma creciente los primeros k elementos y en forma decreciente los restantes. 13. Escriba una función que realice una búsqueda secuencial de una valor (x) en un vector de números enteros. La función debe retornar la posición en el vector si el

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

valor (x) fue encontrado o -1 de lo contrario. El vector se encuentra ordenado en forma decreciente. 14. Escriba una función que reciba un vector de números enteros y lo ordene por el método de Burbuja en forma ascendente. 15. Escriba una función que reciba un vector de números enteros y lo ordene por el método Shell en forma ascendente. 16. Escriba una función que realice una búsqueda binaria de una valor (x) en un vector de números enteros. La función debe retornar la posición en el vector si el valor (x) fue encontrado o -1 de lo contrario. El vector debe encontrarse ordenado en forma creciente.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Ejercicios de Matrices
1. Escriba una función que reciba dos matrices A y B de números reales de dimensiones M x N, realice la suma de estas dos matrices y la almacene en una matriz C resultante. 2. Escriba una función que verifique si una matriz de dimensión M x N de números enteros es simétrica. 3. Escriba un programa que verifique si una matriz cuadrada de números enteros es mágica, en caso de no serlo listar la suma de cada una de sus filas y columnas, así como de sus diagonales principales. Una matriz mágica es aquella en que la suma de cada una de sus filas, columnas y diagonales tienen el mismo valor. 4. Escriba una función que calcule todos los puntos de silla de una matriz de dimensión M x N. Un punto de silla es el máximo de su fila y el mínimo de su columna. 5. Escriba una función que verifique si una matriz de enteros de dimensión M x N es triangular superior. Una matriz triangular superior es aquella en la cual todos los elementos situados bajo su diagonal principal son cero. 6. Escriba una función que reciba dos matrices A y B de números reales, realice la multiplicación de estas dos matrices y la almacene en una matriz C resultante. 7. Escriba una función que reciba una matriz de números enteros de dimensión M x N y verifique cual es mayor en valor absoluto, si la suma de los elementos situados en la parte superior de la diagonal principal o la suma de los elementos situados en la parte inferior de la diagonal principal. 8. Escriba una función que reciba una matriz de números reales de dimensión M x N, y devuelva la suma de los elementos de la diagonal principal. 9. Escriba una función que reciba una matriz de números reales de dimensión M x N, y devuelva la suma de los elementos de la diagonal secundaria. 10. Escriba una función que calcule el determinante de una matriz de números enteros de dimensión M x N. 11. Escriba un programa que sustituya los números perfectos de una matriz de números enteros de dimensión M x N por el menor número primo que encuentre mayor que el. 12. Escriba un programa que calcule la traspuesta de una matriz de números enteros de dimensión M x N. 13. Escriba un programa que calcule la inversa de una matriz por el siguiente método: a) Calcular el valor del determinante de la matriz, si el determinante es cero, no se puede construir la inversa.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

b) Hallar la matriz traspuesta. c) Sustituir cada elemento de la traspuesta por su adjunto, teniendo en cuenta el signo. d) Dividir la matriz obtenida por el determinante hallado en el punto a). 14. Escriba un programa que tome las (n) primeras palabras de un texto ingresado por teclado carácter a carácter, las ordene en forma ascendente y las imprima. Las palabras han de tener 40 caracteres como máximo. 15. Escriba un programa en Pascal que dada una matriz de números enteros, imprima la suma de sus componentes cuya suma de subíndices sean par e impar respectivamente.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Ejercicios de Registros (Estructuras)
1. Diariamente, durante la temporada de béisbol, aparece en el periódico una tabla similar a la siguiente: Equipo A B C D Ganados 95 91 84 81 Perdidos 59 65 70 74 Puntos 617 583 545 523 Puntos Primer Lugar 0.0 5.0 11.0 14.5

Donde Juegos Primer Lugar = ((G1 - P1) - (G2 - P2)) / 2 Puntos = (Juegos Ganados / Juegos Perdidos) * 1000 Se desea que Ud. diseñe una estructura de datos en "Pascal" que permita almacenar dichos datos. Además se pide realizar un programa que actualice y ordene la tabla si los datos de entrada son el resultado de un juego entre dos equipos. 2. Una compañía disquera organiza una encuesta para determinar el éxito de sus

canciones. La población encuestada es dividida en cuatro categorías de acuerdo al sexo y a la edad (Por ejemplo: en personas de 20 años o menos y mayores de 20 años). A cada persona se le piden sus cinco canciones favoritas, las canciones son identificadas por números del 1 al N. Los resultados de la encuesta son tomados de la entrada estándar. Cada elemento leído representa un encuestado y contiene su nombre, apellido, sexo, edad, cedula y sus cinco canciones favoritas en orden de preferencia. Se desea que Ud. diseñe una estructura de datos en "Pascal" para almacenar dicha información. 3. Una compañía dedicada al transporte de pasajeros por vía aérea, desea contratar sus servicios con el fin de automatizar el proceso de reservación de sus vuelos. Para ello Ud. deberá definir una estructura de datos en "Pascal" que permita almacenar dicha información. Además se solicita que realice un programa que permita: (a) Reservar un asiento en un vuelo. (b) Cancelar una reservación. (c) Confirmar una reservación. 4. En una ciudad se conocen los siguientes datos de los ciudadanos: Nombres, Apellidos, Edad, C.I., Sexo, Si es Sexo Masculino se conoce si tiene pies planos o no, Estado Civil, Nacionalidad, Si es masculino se conoce si presto o esta prestando actualmente el Servicio Militar, etc. Se desea que Ud. diseñe una estructura de datos en "Pascal" para almacenar esta información. Además se pide un programa que permita las siguientes operaciones:

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

(a) Listar toda la población que puede votar en las próximas elecciones. (b) Listar aquellos ciudadanos que pueden prestar servicio militar. 5. El comando de campaña del candidato X, requiere hacer una clasificación por sexo de un grupo de encuestados de la siguiente manera: A medida que se ingresan los datos se almacenan en dos pilas (una para el sexo femenino y otra para los de sexo masculino), luego se ordenan por popularidad cada una de las pilas y se imprimen. Sobre cada encuestado se conoce la siguiente información: Nombre, Apellido, Fecha de Nacimiento. Sexo y un número del 0 al 10 que indica la popularidad del candidato. Se desea que Ud. diseñe una estructura de datos en "Pascal" para almacenar esta información, además del programa que resuelve tal situación. 6. Diseñe una estructura de datos y un programa en "Pascal", para almacenar y manejar respectivamente la información concerniente a los resultados de los exámenes integrales. El programa debe ser capaz de: (a) Tomar como entrada los nombres de los alumnos, C.I., Carrera e información de los objetivos evaluados (Aprobado, No Aprobado). (b) Producir un listado de aquellos alumnos que aprobaron la materia, tomando en cuenta un mínimo de tres objetivos, incluyendo el objetivo de aprobación obligatoria. 7. El Banco LATIN BANK, desea automatizar todas sus operaciones bancarias. Por tal razón desea contratar sus servicios, con la finalidad que Ud. diseñe una Estructura de Datos en "Pascal" que permita manejar de una manera fácil y eficiente todas sus operaciones considerando los siguientes requerimientos: (a) El banco maneja básicamente tres (3) tipos de cuentas (aunque su modelo deberá permitir muchos más): cuentas de ahorro, corrientes y de activos líquidos; además por cada una de ellas deberá llevarse la tasa de rendimiento correspondiente. (b) Para cada uno de los clientes se deberá conocer la siguiente información: Número de la Cuenta, Tipo de Cuenta, Nombre, Dirección, Teléfono, Saldo en la Cuenta, Cédula de Identidad, etc. (c) Deberá existir un registro de todas las transacciones realizadas por el Banco: Código de la Transacción, Fecha de la misma, Número de Cuenta Involucrada, Monto en Bolívares y el Número de la caja donde fue realizada. Con el modelo diseñado, programe lo siguiente: (a) Obtener todos los clientes con Cuenta Corriente, ordenados alfabéticamente en orden creciente.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

(b) Mostrar

todas

las

transacciones

que

involucraron

a

la

cuenta

de

ahorros

010101088 desde el día 15-01-94 al 01-02-94. (c) El cajero encargado de la caja 3, desea realizar su cuadre de caja para el día actual de trabajo. Para ello desea obtener la siguiente información: Todos los cheques cobrados. Todos los depósitos realizados. 8. En un instituto existen N alumnos. La información de cada alumno está compuesta por su nombre, apellido, curso y año de nacimiento. En el instituto existen 8 cursos diferentes. Se desea que Ud. diseñe una estructura de datos en "Pascal" para mantener dicha información. Además se pide que realice un programa que indique cuantos alumnos han nacido en cada año y cuantos hay en cada curso. Los años de nacimiento van desde 1972 hasta 1980 inclusive. 9. Se dispone de un vector de registros con los siguientes campos: nombre, cédula, edad y sueldo. Escriba un programa que calcule cuantas personas ganan menos que alguna otra de menor edad, dando como salida una estructura donde se encuentre el nombre de cada una de ellas, junto a la persona de menor edad que ella, que gane más dinero. 10. Diseñe una estructura de datos para manejar la información de la empresa CLONE COMPUTER C.A. la cual tiene su centro de operaciones en Puerto Ordaz, pero además posee filiales en N ciudades de Venezuela. En cada empresa que pertenece a la cadena CLONE COMPUTER existen M empleados divididos en cinco (5) categorías diferentes. Además cada empresa posee un inventario de elementos de computación. 11. Se requiere hacer una clasificación de un grupo de 50 beisbolistas de manera, que a partir de sus estadísticas y tomando en cuenta ciertos criterios produzcamos una lista donde aparezcan en orden de calidad los mencionados deportistas. Sobre cada jugador se conoce la siguiente información: nombre, fecha de Nacimiento, país de Origen, peso (Kg), estatura (Mts), si batea a la derecha o a la izquierda, si lanza a la derecha o a la zurdo, equipo en el que juega en las grandes ligas y posición habitual en el campo. Además si el jugador es "pitcher" se proporcionarán las siguientes estadísticas: entradas lanzadas (IP), bases por bolas concedidas (BB), ponchados (K), carreras limpias permitidas (CL), juegos ganados (G) y juegos perdidos (P). Si el jugador no es "pitcher" (sólo interesa el bateo), se proporcionarán los siguientes datos: veces al bate (VB), hits (H), jonrones (HR), triples (3H), dobles (2H), carreras anotadas (CA), carreras impulsadas (CI) y bases robadas (BR). Se desea que Ud. diseñe una estructura de datos en "Pascal" que permita almacenar dicha información, con la finalidad de obtener una lista de los "mejores" jugadores (Bateadores y Pitchers) del grupo de 50.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

NOTA: Promedio Bateo = (H / VB) * 100 / Efectividad Pitchers = (CL * 9) / IP

Pilas y Colas
1. 2. 3. 4. 5. 6. 7. Escriba un programa que A-Pile dos pilas en otra pila resultante. Escriba una rutina que intercambie dos pilas. Escriba una rutina que vacie una pila en otra. Escriba una rutina para concatenar dos colas en una resultante. Escriba una rutina para invertir una cola. Escriba una rutina para copiar una cola en otra. Defina una estructura de datos y las operaciones básicas de una bi-pila. Una bi-pila es una estructura que comparten un único arreglo para almacenar c/u de sus elementos y las inserciones y supresiones se realizan en cada uno de sus extremos. Alguna de ambas pilas podrá ocupar la totalidad de la estructura. 8. Defina una estructura que soporte la simulación de "COLA-PILA" y escriba las rutinas básicas para su operación. NOTA : Se debe manejar un parámetro que indique la forma en que se comporta la estructura en un momento dado.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Archivos
1. Escriba un programa que dado un archivo de texto, cree otro con los caracteres de cada línea invertidos. 2. Escriba un programa que dado un archivo de texto, almacene las líneas impares en un archivo y las líneas pares en otro. 3. 4. Escriba un programa que permita concatenar dos archivos de números enteros. Escriba un programa que permita mezclar dos archivos de números enteros, los cuales se encuentran ordenados en forma ascendente en cada archivo. 5. Escriba un programa que copie un archivo de caracteres en otro, cambiando los caracteres en minúsculas a mayúsculas. 6. Escriba un programa que lea un archivo de enteros y encuentre el elemento máximo, mínimo y promedio.

Universidad Nacional Experimental de Guayana. Coordinación de Ingeniería en Informática. Asignatura: Programación II. Profesor: Ing. Ronald Pérez.

Recursividad
1. Escriba una rutina recursiva que verifique si una palabra es palíndrome. 2. Escriba una rutina recursiva que invierta un arreglo de números enteros. 3. Escriba una rutina recursiva que imprima en forma invertida los dígitos de un número entero. 4. Escriba una rutina recursiva que invierta una cadena caracteres. 5. Escriba una rutina recursiva que calcule los (n) primeros números de la serie de Fibonacci. 6. Escriba una rutina recursiva que calcule el factorial de un número entero (n). 7. Escriba una rutina recursiva que encuentre el máximo común divisor (mcd) de dos números a y b. a y b son enteros mayores que 0. 8. Escriba una rutina recursiva que calcule la media aritmética de un vector de números reales. 9. Escriba una rutina recursiva que realice una búsqueda binaria (dicotómica) de un valor (x) dentro de un vector ordenado en forma creciente de números enteros. 10. Escriba una rutina recursiva que verifique la formula de Cassini para un entero (n) mayor que 1. La formula de Cassini es: 2 n fn+1 * fn-1 - (fn) = (-1) donde fn es el enésimo número de la Serie de Fibonacci. 11. Escriba una rutina recursiva que reciba dos enteros a y b tales que a, b >= 1 y calcule la división entera de dichos números. 12. Escriba una rutina recursiva que sume los (n) primeros números enteros positivos. 13. Escriba una rutina recursiva que permita contar la cantidad de dígitos que tiene un número entero positivo.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->