You are on page 1of 9

DE EJERCICIOS

Ejercicios Bsicos:
1.

Escriba un programa que dado tres nmeros a, b y c imprima


el menor de ellos.

2.

Realice un programa que lea dos nmeros a y b, calcule e


imprima su producto, cociente y el resto cuando el primero se divide
por el segundo.

3.

Escriba un programa que convierta una medida dada en pies


y lo transforme en: a) yardas, b) pulgadas, c) centmetros y d)
metros, conociendo que 1 pie = 12 pulgadas, 1 pulgada = 2,54cm y 1
yarda = 3 pies.

4.

Escriba un programa que permita hallar las races de una


Ecuacin de 2do grado.

5.

Se deben leer los coeficientes a, b y c.

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, 1000.
Billetes: 2000, 5000, 10000, 20000 y 50000.

Considere que debe darse

la menor cantidad de billetes y monedas.


6.

Escriba un programa que determine el monto a pagar por una


llamada telefnica, teniendo en cuenta lo siguiente: Toda llamada que
dure hasta 5 minutos tiene un costo de Bs. 250. por cada minuto
adicional se cobrar bs. 50.

7.

Se debe leer el tiempo de la llamada.

Escriba un programa que lea una secuencia de nmeros


enteros y calcule el mayor, menor y el promedio de la secuencia.

La

secuencia termina cuando se ingresa el nmero cero.


8.

Escriba un programa que dado tres nmeros los imprima en


orden ascendente.

9.

Escriba un programa que calcule el valor de n para el cual


la siguiente suma excede a un valor x: 1 + 2 + 3 + 4 + + n.

Por

ejemplo para un X = 20, el n que excede es n = 6, porque 1 + 2 + 3 +


4 + 5 + 6 = 21.
10.

Escriba un programa que dado un nmero n determine si es


par o impar.

11.

Escriba un programa que dado un carcter determine si este


es una vocal o no.

12.

Escriba un programa que imprima los 100 primeros nmeros


naturales y la suma de los mimos.

13.

Escriba un programa que determine los primeros n nmeros


primos, comenzando de un nmero x.

14.

Se debe leer x y n.

Realice un programa que dado un carcter determine si este


es un digito entre '0'.. '9'.

15.

Escriba un programa que multiplique dos nmeros por medio


de sumas sucesivas.

16.

Escriba un programa que divida dos nmeros por medio de


restas sucesivas.

17.

Escriba un programa que cuente el nmero de cifras o


dgitos de un valor entero positivo.

18.

Escriba un programa que dado dos nmeros enteros a y b


realice la operacin de potencia ab.

19.

Escriba un programa que permita calcular la suma de la


progresin geomtrica: 1 + x + x2 + + xn.

20.

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


2

2/2 + 3/2 + + n/2n


21.

Escriba un programa que determine si un ao es bisiesto.


Un ao es bisiesto si es mltiplo de 4, excepto los mltiplos de 100
que no son bisiestos salvo que a su vez tambin sean mltiplos de
400. (1800 no es bisiesto, 2000 s).

22.

Escriba un programa que determine que si un nmero entero


es capica. (nmero que se escribe igual al derecho y al revs).

No

use cadenas.
23.

Escriba un programa que permita hallar el factorial de un


nmero n.

24.

Escriba un programa que lea un entero positivo y produzca


el nmero invertido.

25.

Escriba un programa que dada una cadena de fecha en el


formato dd mm aaaa devuelva su correspondiente en texto.

Ej.:

Para 12 03 1998 el valor en texto es 12 de marzo de 1998.


26.

Una persona desea invertir su dinero en un banco, el cual


le otorga un 3% de inters mensual. Cul ser la cantidad de dinero
que esta persona tendr al cabo de n meses, si la ganancia de cada
mes es reinvertida.

27.

Un supermercado hace una promocin, mediante la cual el


cliente obtiene un descuento dependiendo de un nmero que se escoge
al azar.

Si el nmero escogido es menor que 74 el descuento es del

15% sobre el total de la compra, si es mayor o igual a 74 el


descuento es del 20%.

Imprimir cunto es el subtotal, el descuento y

el total a pagar.
28.

Escriba un programa que lea un nmero entero n mayor a


cero que identifica una cantidad de segundos, y calcule e imprima el
nmero de horas, minutos y segundos contenidos en ella.

Ejemplo:

Para n = 15723 se debe imprimir 4 horas, 22 minutos y 3 segundos.


29.

Escriba un programa que dada una hora en formato de


hh:mm:ss determine cul ser el tiempo dentro de 1 segundo.

30.

Escriba una funcin que reciba un nmero entero (base


binaria) y devuelva su equivalente en base decimal.
11010 se debe retornar 26.

Ejemplo para n =

No es necesario el uso de cadenas de

carcter.
CADENAS
31.

Escriba una funcin que reciba una cadena de caracteres y


devuelva su longitud.

32.

Escriba una funcin que reciba una cadena de caracteres y


la retorne sin ningn espacio en blanco.

33.

Escriba una funcin que reciba una cadena de caracteres y


retorne la misma en mayscula.

34.

Utilice la tabla ASCII.

Escriba una funcin que reciba una cadena de caracteres y


la retorne invertida.

35.

Escriba una funcin que reciba una cadena de caracteres y


un char.

La funcin deber devolver la posicin de la primera

ocurrencia del char.


36.

Escriba una funcin que reciba una cadena de caracteres y


un char.

La funcin deber devolver la posicin de la ltima

ocurrencia del char.


37.

Escriba una funcin que reciba dos cadenas de caracteres.


La funcin deber devolver una cadena producto de la concatenacin de
las dos cadenas recibidas.

38.

Escriba una funcin que permita eliminar una secuencia de


caracteres dentro de una cadena recibida por parmetro a partir de
determinada posicin p y un nmero determinado de dgitos.

39.

Escriba un programa que determine si una palabra es


palndroma.

40.

(se escribe igual al derecho y al revs).

Escriba un programa que determine si una secuencia de


caracteres recibida por teclado contiene vocales, el nmero de cada
una de ellas.

La secuencia terminar cuando se lea el carcter punto

(.). La lectura debe hacerse con la funcin READKEY de Turbo Pascal.

41.

Escriba un programa que lea una frase e imprima cada


palabra y su tamao en lneas diferentes.

42.

Escriba un programa que lea un texto y cuente la


frecuencia de un carcter n.

la secuencia terminar cuando se lea el

carcter punto (.) o se llegue al final de cadena.


43.

Escriba un programa que lea una frase y sustituya todas


las secuencias de dos o ms espacios en blanco juntos y por uno solo
blanco y visualice la frase modificada.

44.

Escriba un programa que lea una frase y visualice cuantas


palabras contiene la misma.

45.

Escriba una rutina que reciba una cadena de caracteres y


devuelva el carcter que se repite con mayor frecuencia.

VECTORES
46.

Escriba un programa que cuente el nmero de veces que cada


letra del abecedario se repite en un texto.

47.

Escriba una funcin que cuente las palabras de (n) letras


que haya en un texto.

Cada palabra se debe almacenar en una posicin

de un vector de char.
48.

Escriba un programa que lea una secuencia de nmeros


enteros, calcule el promedio, as como el elemento mnimo y mximo.

49.

Escriba una funcin que reciba dos vectores y determine si


son disyuntos, es decir que por lo menos difieren en un valor.

Los

vectores no se encuentran necesariamente ordenados.


50.

Escriba una funcin que reciba un vector de nmeros


enteros y lo invierta.

51.

Escriba una funcin que reciba un vector de nmeros


enteros y asigne cero (0) a los valores duplicados.

52.

Escriba un programa que lea (n) nmeros enteros y los


valla ordenando en forma ascendente en un arreglo, mientras los va
leyendo (ordenacin por insercin).

53.

Escriba una funcin que reciba dos vectores de nmeros


reales A y B ordenados ascendentemente y los ordene en otro vector C
(ordenacin por mezcla).

54.

Escriba una funcin que reciba un arreglo A de (n)


elementos enteros y tambin reciba un nmero entero 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.
55.

Realice una funcin que realice una bsqueda secuencial de


un valor x en un vector de nmeros enteros.

La funcin debe retornar

la posicin en el vector si el valor de x fue encontrado o -1 de lo


contrario.
56.

El vector se encuentra ordenado en forma decreciente.


Escriba una funcin que reciba un vector de nmeros

enteros y lo ordene por el mtodo de la burbuja en forma ascendente.


57.

Escriba una funcin que realice una bsqueda binaria de un


valor x en un vector de nmeros enteros.

La funcin deber retornar

la posicin en el

vector si el valor de x existe en el mismo o -1 si

no es encontrado.

El vector se encuentra ordenado de forma

creciente.
MATRICES
58.

Escriba una funcin que reciba dos matrices A y B de


nmeros reales de dimensiones M x N.

Realice la suma de estas

matrices y la almacene en una matriz C resultante.


59.

Escriba una funcin que verifique si una matriz M x N de


nmeros enteros es simtrica.

60.

Escriba un programa que verifique si una matriz cuadrada


de nmeros enteros es mgica, en caso de no serlo listar la suma de
cada una de sus filas y columnas,
principales.

as como de sus diagonales

Una matriz mgica es aquella donde la suma de cada una

de sus filas, columnas y diagonales tienen el mismo valor.


61.

Escriba una funcin que calcule todos los puntos de silla


de una matriz de dimensin M x N.

Un punto de silla es el mximo de

su fila y el mnimo de su columna.


62.

Escriba una funcin que verifique si una matriz de enteros


de dimensin

M x N es triangular superior.

Una matriz triangular

superior es aquella en donde todos los elementos situados bajo la


diagonal principal son cero.
63.

Escriba una funcin que reciba dos matrices A y B de


nmeros reales, realice la multiplicacin de estas dos matrices y
almacene en una C resultante.

64.

Escriba una funcin que reciba una matriz de nmeros


enteros de dimensiones 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.

65.

Escriba una funcin que reciba una matriz de nmeros


reales de dimensin M x N y devuelva la suma de los elementos de la
diagonal principal.

66.

Escriba una funcin que reciba una matriz de nmeros


reales de dimensiones M x N y devuelva la suma de la diagonal
secundaria.

67.

Escriba un funcin que calcule la transpuesta de una


matriz.

68.

Escriba un programa que dada una matriz de nmeros


enteros, imprima la suma de sus componentes cuya suma de subndices
sea par e impar respectivamente.

ESTRUCTURAS
69.

Una compaa disquera organiza una encuesta para


determinar el xito de sus canciones.

La poblacin encuestada es

dividida en cuatro categoras de acuerdo al sexo y a la edad.

A cada

persona se le piden sus cinco canciones favoritas, las canciones son


identificadas por nmeros del 1 al N.
son tomados de la entrada estndar.

Los resultados

de la encuesta

Cada elemento ledo representa

un encuestado y contiene su nombre, apellido, sexo, edad, cdula y


sus cinco canciones favoritas en orden de preferencia.

Se desea que

disee una estructura de datos para almacenar dicha informacin.


70.

Una compaa dedicada al transporte de pasajeros va


area, desea contratar sus servicios con el fin de automatizar el
proceso de reservacin de sus vuelos.

Para ello Ud. Deber definir

una estructura de datos que permita almacenar dicha informacin.


Adems se solicita que realice un programa que permita: a) Reservar
un asiento en un vuelo, b) cancelar una reservacin, c) confirmar una
reservacin.
71.

En una ciudad se conocen los siguientes datos de los


ciudadanos: Nombres, Apellidos, Edad, C.I., Sexo,

Estado Civil,

Nacionalidad. Si el sexo es masculino se conoce si tiene pies planos


o no y si ha prestado servicio militar.

Se desea que disee una

estructura de datos para almacenar esta informacin.

Adems se pide

un programa que permita las siguientes operaciones: a) listar toda la


poblacin que puede votar en las prximas elecciones, b) listar
aquellos ciudadanos que pueden prestar servicio militar.
72.

El comando de campaa del candidato X, requiere hacer una


clasificacin 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 cada sexo), luego se ordenan por popularidad y cada una de
las pilas se imprimen.

Sobre cada encuestado se conoce la siguiente

informacin: Nombre, Apellido, Fecha de Nacimiento, Sexo y un nmero


del 0 al 10 que indica la popularidad del candidato.

Se desea que

disee una estructura de datos para almacenar esta informacin,


adems del programa que resuelva la situacin.
73.

Disee una estructura de datos y un programa para


almacenar y manejar respectivamente la informacin concerniente a los
resultados de los exmenes parciales de una materia.

Se asume que la

materia es acumulativa y son tres exmenes parciales (30 30 y 40).


El programa debe ser capaz de:

a) tomar como entrada los nombres de

los alumanos, C.I. y Nota de cada parcial; b) producir un listado de


aquellos alumnos que aprobaron y otro listado los que no aprobaron
(aprobatoria 45% de la nota total).
74.

El Banco LAKY desea automatizar todas sus operaciones


bancarias.

Por tal razn desea contratar sus servicios y realice un

programa que permita manejar de una manera fcil y eficiente todas


sus operaciones considerando los siguientes requerimientos: A) el
banco maneja tres tipos de cuentas (aunque el modelo deber de
permitir muchos ms): cuenta de ahorros, corriente y activos
lquidos; adems por cada una de ellas deber llevarse la tasa de
rendimiento correspondiente.

B) para cada uno de los clientes deber

conocer la siguiente informacin: nmero de cuenta (20 dgitos),


C.I., Nombres, Apellidos, Tipo de Cuenta, Direccin, Telfono.

C)

deber existir un registro de todas las transacciones realizada por


el banco: Cdigo de la transaccin, fecha, nmero de cuenta
involucrada, monto en bs. Y el nmero de la caja donde fue realizada.
Con el modelo diseado programe lo siguiente:

(a) Obtener todos los

clientes de un tipo de cuenta especificado por teclado, ordenado


alfabticamente en orden creciente o decreciente, segn sea la
solicitud; (b) Mostrar todas las transacciones que involucraron a un
Nmero de Cuenta desde y hasta una fecha determinada; (c) Una opcin
que permita a un cajero realizar el cierre de caja, para ello deber
especificar el nmero de caja y la fecha para obtener el total de
cheques o efectivo cobrados y los depsitos realizados.
75.

Un instituto de educacin posee N alumnos.

La informacin

de cada alumno est compuesta por: Nombre, Apellido, Curso y Ao de


Nacimiento.

En el instituto existen 8 cursos diferentes.

Se desea

que disee e implemente una estructura de datos y un programa que


permita mantener la informacin y pueda indicar cuntos alumnos
pertenecen a cada curso y permita listarlos de forma ascendente.
76.

Se dispone de un vector de registros con los siguientes


campos: Nombre, cdula, 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 ms
dinero.
77.

Disee una estructura de datos para manejar la informacin


de la empresa Y2K COMPUTER, C.A. La cual tiene su centro de
operaciones en Puerto Ordaz, pero adems posee filiales en N ciudades
de Venezuela.

En cada empresa existen M empleados divididos en 5

categoras diferentes.

Adems cada empresa posee un inventario de

equipos informticos.
78.

Se requiere hacer una clasificacin de un grupo de 50


beisbolistas de manera, que a partir de sus estadsticas y tomando en
cuenta ciertos criterios produzcamos una lista donde aparezcan en
orden de calidad.

Sobre cada jugador se conoce la siguiente

informacin: Nombre, Fecha de Nacimiento, Pas de Origen, Peso (kg.),


Estatura (mts), si batea a la derecha o izquierda, si lanza a la
derecha o izquierda, equipo en que juega en las grandes ligas y
posicin habitual de campo.

Si el jugador es Pitcher se

proporcionarn las siguientes estadsticas: entradas lanzadas (IP),


bases por bolas concedidas (BB), ponches (K), carreras limpias
permitidas (CL), juegos ganados (G), juegos perdidos (P).

Si el

jugador no es Pitcher (slo interesa el bateo), se proporcionarn


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 disee un

estructura de datos que permita almacenar de forma eficiente dicha


informacin con la finalidad de obtener una lista de los mejores
jugadores (Bateadores y Pitcher) del grupo.
Promedio de Bateo = (H / VB) * 100
Efectividad Pitcher = (CL * 9) / IP.
ARCHIVOS
79.

Escriba un programa que dado un archivo de texto, cree


otro con los caracteres de cada lnea invertidos.

80.

Escriba un programa que dado un archivo de texto, almacene


las lneas impares en un archivo y las lneas pares en otro.

81.

Escriba un programa que permita concatenar dos archivos de


nmeros enteros.

82.

Escriba un programa que permita mezclar dos archivos de


nmeros enteros, los cuales se encuentran ordenados en forma
ascendente en cada archivo.

83.

Escriba un programa que copie un archivo de caracteres en


otro, cambiando los caracteres en mayscula a minscula.

84.

Escriba un programa que lea un archivo de enteros y


encuentre el elemento mximo y el elemento mnimo.-