Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ejercicios Programacion
Ejercicios Programacion
JERG
HOJA 1
Pgina 1 de 33
EJERCICIOS PROGRAMACIN
JERG
Pgina 2 de 33
EJERCICIOS PROGRAMACIN
JERG
32. Polinomio2-Variar el anterior problema para que acepte coeficientes variables hasta
un mximo de x10.
33. Pasar Letras a Nmeros- Realizar un programa en Pseudocdigo y en C que lea
un carcter por teclado y muestre el nmero que le corresponde en el Abecedario:
a devuelve un 1, b devuelve un 2,...Se parar al pulsar un asterisco(*).
34. Segundos - Realizar un programa en Pseudocdigo y en C que pregunte por
teclado la edad de una persona y muestre dicha edad en segundos mediante una
funcin y mediante un procedimiento.
35. Cuadrante- Realizar un programa en Pseudocdigo y en C que dados dos nmeros
reales, me indique el cuadrante al que pertenecen del espacio afn mediante una
funcin. Realizar la compilacin por separado en dos mdulos: uno el principal y
otro la funcin
36. Mltiplos5- Realizar un programa que calcule e imprima los mltiplos de 5
comprendidos entre dos nmero dados por teclado. Verificar que a<b. si no es as,
que de error.
37. Men- Realizar un programa en Pseudocdigo y en C que escriba el siguiente men
en pantalla:
* MENU *
1 Abrir
2 Cerrar
3 Modificar
4 Salir
HOJA 1
Pgina 3 de 33
EJERCICIOS PROGRAMACIN
JERG
Al elegir una opcin, mostrar en pantalla la opcin elegida. Repetir proceso hasta
pulsar la opcin 4.
38. Pasar a Maysculas - Realizar un programa en Pseudocdigo y en C que lea una
carcter por teclado y lo ponga en mayscula.( NOTA: carcter + a+A)
39. Descuentos-Realizar un programa en Pseudocdigo y en C que calcule los
descuentos a aplicar a una compra segn los siguientes criterios:
Si la compra es superior a 100 unidades, aplicar un 40% de descuento.
Si la compara est entre 25 y 100 unidades, 20% de descuento
Si la compra est entre 10 y 24 unidades, realizar un 10% de descuento.
Si la compra es inferior a 10 unidades, no se aplica descuento.
Se nos pedir por teclado Cdigo artculo, Precio y Unidades. Se obtendr como
resultado el Cdigo del artculo, el Subtotal a pagar, el Descuento aplicado y el Total a
pagar.
40. Pulsar f - Realizar un programa en Pseudocdigo y en C que mediante un bucle
vaya leyendo letras mostrndolas por pantalla hasta pulsar la letra f.
41. Salto n - Realizar un programa en Pseudocdigo y en C que muestre por pantalla
los nmeros del 0 al 1000 dando un salto indicado por teclado.
42. Peaje- Realizar un programa en Pseudocdigo y en C que calcule el total a pagar en
un peaje de carretera segn las siguientes instrucciones:
Las motos pagan 3,2
Los coches pagan 01 por kilmetro recorrido
Los camiones pagan 01 por kilmetro recorrido y 01 por tonelada
transportada
Los autobuses pagan 0,2 por kilmetro recorrido
43. Conversin temperatura-Realizar un programa en Pseudocdigo y en C que
muestre en pantalla un Men con las siguientes opciones:
1-Pasar de Centgrado a Fahrenheit.
2-Pasar de Fahrenheit a Centgrados.
3-Salir
Una vez elegida una opcin se nos pedir la cantidad a convertir y mediante una
funcin se realizarn los clculos. El programa acabar al seleccionar Salir.
Fahrenheit = 95 Centgrados + 32
Centgrados =
5
9
Fahrenheit 32
HOJA 1
Pgina 4 de 33
EJERCICIOS PROGRAMACIN
JERG
x=
b b 2 4 ac
2a
49. Races de Segundo Grado Complejos- Ampliar el anterior problema para que
calcule races imaginarias de la forma x= sti de donde:
b
s=
2a
t=
b 2 4ac
2a
HOJA 1
Pgina 5 de 33
EJERCICIOS PROGRAMACIN
JERG
51. Asteriscos- Obtener por pantalla la siguiente figura, mediante uso de la sentencia
for:
----*----*----*----*----*
52. Getchar-Qu hace el siguiente programa?
#include<stdio.h>
void main()
{
char car;
while (1)
{
printf(\n Introduzca un carcter);
car=getchar();
}
}
53. Intereses- Realizar un programa en Pseudocdigo y en C que calcule los intereses
producidos por un capital c, invertida a un inters r durante t das segn la frmula:
crt
36000
54. Esfera- Realizar un programa en Pseudocdigo y en C que calcule el volumen de
una esfera.
I=
V = 43 r 3
55. Tringulo Rectngulo- Realizar un programa en Pseudocdigo y en C que muestre
por pantalla lo siguiente:
1
12
123
1234
12345
123456
1234567
12345678
123456789
HOJA 1
Pgina 6 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 1
Pgina 7 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 1
Pgina 8 de 33
EJERCICIOS PROGRAMACIN
JERG
73. Doble factorial - Realizar un programa en Pseudocdigo y C que lea un nmero por
teclado y calcule el doble factorial del mismo.
74. Adivina - Realizar un programa en Pseudocdigo y C en el que tendremos que
adivinar un nmero secreto generado por el ordenador. El ordenador nos pedir n
nmero y nos indicar si hemos acertado o no. En caso negativo, nos indicar si el
nmero secreto es mayor o menor al que nosotros dijimos. Al acertar se nos
mostrar en pantalla el nmero de intentos.
75. Bingo - Realizar un programa en Pseudocdigo y C que simule un juego de Bingo.
El programa permitir generar tableros con 12 nmeros aleatorios, jugar mostrando
nmeros entre el 1 y el 100, indicarle si ha habido lnea o bingo y salir.
76. Estadstica - Realizar un programa en Pseudocdigo y C que genere 10.000
nmeros aleatorios entre 1 y 100 e indique la proporcin en que sale cada nmero
de esos 100. Mostrar el resumen al final.
77. Contar tiempo - Realizar un programa en C que dado un nmero por teclado, nos
indicar el nmero de iteraciones de un bucle. El programa deber mostrar por
pantalla el tiempo que tarda en realizar dicho bucle.
78. Chinos - Realizar un programa en Pseudocdigo y C que simule el juego de los
chinos contra el ordenador. Para jugar, el ordenador se generar sus chinos y
nosotros le indicaremos nuestros chinos. Luego el ordenador generar su apuesta y
leer la nuestra, tras lo cual indicar el ganador, si es que lo hay.
79. Reparto proporcional - Realizar un programa en Pseudocdigo y en C que calcule
el reparto proporcional de una cantidad a repartir dada por teclado entre otras 3
dadas por teclado tambin. Para ello se divide la cantidad a repartir entre la suma de
las otras cantidades. Para saber lo que le corresponde a cada cantidad,
multiplicamos el resultado de dicha divisin por cada cantidad obteniendo as el
reparto proporcional.
HOJA 1
Pgina 9 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 2 (Cadenas)
1. Nombres - Realizar un programa en Pseudocdigo y en C que lea 5 nombres y los
muestre por pantalla.
2. Clave - Realizar un programa en Pseudocdigo y en C que muestre un men en
pantalla con las opciones de cambiar clave y salir. La primera opcin nos permitir
cambiar la clave existente siempre y cuando insertemos primero la anterior. Una vez
introducida la anterior clave, se nos pide la nueva y para completar la accin hay
que confirmar la nueva clave.
3. Compara - Realizar un programa en Pseudocdigo y en C que compare dos
cadenas dadas por teclado. Se nos mostrar un mensaje indicando cul de las dos es
mayor.
4. Concatena - Realizar un programa en Pseudocdigo y en C que lea dos cadenas y
las concatene en una tercera cadena que mostrar por pantalla.
5. Maysculas Minsculas - Realizar un programa en Pseudocdigo y en C que lea
una cadena con letras maysculas y minsculas intercaladas y la muestre todo en
maysculas y todo en minsculas. Usar strupr y strlwr.
6. Hexadecimal a Decimal - Realizar un programa en Pseudocdigo y en C que lea
un nmero Hexadecimal de 5 cifras por teclado y mediante una funcin calcule el
nmero decimal a que equivale. Usar atoi.
7. Cuatro vocales - Realizar un programa en Pseudocdigo y en C lea un texto y
cuente las palabras que tienen 4 o ms vocales diferentes en el mismo.
8. Longitud - Realizar un programa en Pseudocdigo y en C que lea una frase por
teclado e indique mediante una funcin, la longitud de la misma, incluidos los
espacios y sin incluir. No usar la librera string.h
9. Buscar posicin- Realizar un programa en Pseudocdigo y en C que lea una frase
y un carcter y muestre la primera posicin donde aparece dicho carcter por
primera vez.
10. Subcadena - Realizar un programa en Pseudocdigo y en C que lea una cadena,
una posicin y una longitud y mediante una funcin obtengamos la subcadena que
empieza en la posicin dada y tiene longitud caracteres de la cadena original. No
usar la librera string.h
11. Subcadena2 Realizar un programa que obtenga la parte derecha de una cadena de
caracteres indicando la cadena y un valor numrico entero que nos dir cuntos
caracteres debemos obtener desde el final de la cadena
HOJA 2
Pgina 10 de 33
EJERCICIOS PROGRAMACIN
JERG
Pgina 11 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 2
Pgina 12 de 33
EJERCICIOS PROGRAMACIN
JERG
39. Hopolapa - Realizar un programa en Pseudocdigo y C que lea una cadena e inserte
detrs de cada vocal que encuentre, una p y la vocal encontrada. Por ejemplo, si
tenemos Holase transformar en Hopolapa.
40. Morfemas - Realizar un programa en Pseudocdigo y C que lea un verbo, obtenga
su morfema y despus obtenga la conjugacin del Presente de Indicativo de dicho
verbo.
HOJA 2
Pgina 13 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 3 (Tablas)
1. Rellenar tabla Realizar un programa para crear una tabla de 20 elementos enteros
de nombre Pares, la rellene con los primeros nmeros pares y los muestre por
pantalla.
2. Rellenar tabla2 - Realizar un programa en Pseudocdigo y en C que lea los
valores de una tabla de 4 enteros y luego los muestre por pantalla.
3. Pasar a Binario - Realizar un programa en Pseudocdigo y C que dado un nmero
decimal lo transforme en binario usando una tabla.
4. Inicializar - Realizar un programa en Pseudocdigo y en C que defina una
constante para definir el tamao de un vector (2 3) y utilizarla para cargar el
vector con ceros y visualizarlo en dos filas.
5. Directivas - Realizar un programa en C que tenga directivas condicionales para
definir el tamao de un vector y escribir un mensaje al comienzo del programa
especificando el tipo de tamao seleccionado.
6. Cuadrados - Realizar un programa en Pseudocdigo y C que lea un nmero por
teclado y guarde en una tabla los cuadrados de los 10 nmeros siguientes al dado.
Mostrarlos todos por pantalla.
7. Contador - Realizar un programa en Pseudocdigo y C que vaya leyendo enteros
hasta introducir un 0. el programa ir contando en un tabla los positivos y los
negativos. Tras pulsar el 0, se mostrar por pantalla el resultado de la cuenta.
8. Mximo, mnimo, media - Realizar un programa en Pseudocdigo y C que lea 10
nmeros y calcule la media, el mximo y el mnimo de los nmeros introducidos.
9. Posicin Mximo Realizar un programa que lea 10 enteros y calcule el valor
mximo y muestre su posicin. En el caso de que el mximo se repita, indicar todas
las posiciones donde aparece.
10. 2 dimensiones - Realizar un programa en Pseudocdigo y C que lea una tabla de 2
dimensiones 3x4 de caracteres.
11. Suma posicin Realizar un programa que en una tabla de 10x10 guarde en cada
posicin, la suma de los ndices de dicha posicin (fila + columna) y luego lo
muestre por pantalla.
12. Cuenta parmetros - Realizar un programa en Pseudocdigo y C que imprima por
pantalla el nmero de parmetros pasados al programa principal y la posicin que
ocupan.
HOJA 3
Pgina 14 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 3
Pgina 15 de 33
EJERCICIOS PROGRAMACIN
JERG
25. Suma filas y columnas - Realizar un programa en Pseudocdigo y C que lea una
matriz 3x3 y calcule la suma de cada fila y la suma de cada columna. El programa
mostrar en pantalla 6 resultados: 3 por filas y 3 por columnas.
26. Valor medio - Realizar un programa en Pseudocdigo y C que lea una vector de 20
precios. Utilizar una funcin que detecte cundo un precio introducido es superior a
la media de los precios anteriores, mostrando un mensaje de aviso en dicho caso.
27. Tridimensional - Realizar un programa en Pseudocdigo y C que en una tabla de 3
dimensiones, introduzca un nombre , unos apellidos y un dni. La tabla tendr una
dimensin de 5x3x20.
28. Estrellas - Realizar un programa en Pseudocdigo y C que lea una tabla de 10x10
de enteros. En cada posicin se introducir un nmero correspondiente a la
intensidad de luz de una foto del espacio en un rango de 0 a 9. El programa deber
indicarnos dnde hay una estrella segn la siguiente frmula: en la casilla i,j habr
una estrella si la media de sus adyacentes es superior a 5. El programa nos mostrar
un * donde haya una estrella y un espacio en blanco donde no la haya.
29. Triangular - Realizar un programa en Pseudocdigo y C que lea una matriz 4x4 y
nos diga si dicha matriz es triangular superior, inferior o ninguna de las dos. Una
matriz es triangular superior si los elementos por debajo de la diagonal principal son
ceros.
30. Suma Diagonales - Realizar un programa en Pseudocdigo y C que lea una matriz
3x3 y calcule las sumas de sus diagonales.
31. Traductor - Realizar un programa en Pseudocdigo y C que lea una frase en
espaol y la traduzca al ingls o viceversa. Usaremos un diccionario reducido
compuesto por las palabras yo, tu, el, ella, soy, eres, es, alto, bajo, espaol y sus
equivalentes en ingls.
32. Tabla general - Realizar un programa en Pseudocdigo y C que usando una tabla
de 50x50 nos permita trabajar con tablas ms pequeas, indicando como
argumentos del main el tamao de la tabla que usaremos. El programa pedir los
nmeros reales a introducir y luego los mostrar por pantalla redondeados a entero.
33. Final ao - Realizar un programa en Pseudocdigo y C que lea una fecha y calcule
el nmero de das que quedan hasta fin de ao.
34. Producto - Realizar un programa en Pseudocdigo y C que lea dos matrices 3x3 y
calcule su producto.
35. Cadena ms corta - Realizar un programa en Pseudocdigo y C que meta 10
cadenas en una tabla y luego muestre a cadena ms corta. Usar una funcin que
devuelva la cadena ms corta y que tenga como parmetro la tabla.
HOJA 3
Pgina 16 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 3
Pgina 17 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 3
Pgina 18 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 4 (PUNTEROS)
1. Leer Realizar un programa en Pseudocdigo y en C que lea un entero mediante
una funcin y mediante un procedimiento con puntero a la variable declarada en el
programa principal.
2. Leer 2 - Realizar un programa en Pseudocdigo y en C que lea dos nmeros en un
procedimiento mediante punteros a las variables declaradas en el programa
principal, los multiplique y nos muestre por pantalla el resultado de la operacin.
3. Direcciones - Realizar un programa en C que declare 5 variables de distintos tipos y
nos muestre las direcciones de memoria que ocupan dichas variables.
4. Cubo - Realizar un programa en Pseudocdigo y C que mediante un procedimiento
calcule el cubo de un nmero dado por teclado.
5. Intercambio - Realizar un programa en Pseudocdigo y en C que utilice una
funcin para intercambiar los valores en memoria de dos variables numricas.
6. Tringulo - Realizar un programa en Pseudocdigo y en C que mediante un
procedimiento y un puntero calcule el rea de un tringulo dado su lado por teclado.
7. Fuerza Gravitacional - Realizar un programa en Pseudocdigo y en C que calcule
mediante un procedimiento la fuerza gravitacional entre dos masas m1 y m2
separadas una distancia d. La fuerza gravitacional viene dada por:
m1 + m2
donde G=6,67*10-11
F =G
2
d
8. Mdulos - Realizar un programa en Pseudocdigo y en C que lea dos nmeros
enteros en un procedimiento, los multiplique en otro procedimiento y muestre el
resultado en el programa principal.
HOJA 4
Pgina 19 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 5 (RECURSIVIDAD)
1. Factorial Realizar un programa en Pseudocdigo y en C que lea un entero y
calcule el factorial de forma recursiva y de forma iterativa.
2. Suma 100 - Realizar un programa en Pseudocdigo y en C que calcule de forma
recursiva la suma de los 100 primeros nmeros enteros.
3. Suma n primeros - Realizar un programa en Pseudocdigo y en C que calcule la
suma de los n primeros cuadrados de forma recursiva.
4. Potencia - Realizar un programa en Pseudocdigo y en C que calcule la potencia de
un nmero dado por teclado de forma recursiva.
5. Fibonacci - Realizar un programa en Pseudocdigo y en C que dado un nmero,
calcule su funcin de Fibonacci. Esta funcin se calcula de la siguiente forma:
F(0)=1
F(1)=1
F(n)=F(n-1)+F(n-2)
6. Pares - Realizar un programa en Pseudocdigo y en C que lea una nmero par (lo
compruebe) y calcule la suma de los pares desde dicho nmero hasta el 2 de forma
recursiva.
7. Sucesin Realizar un programa en Pseudocdigo y en C que calcule la sucesin
n*(n-1) de forma recursiva para un n dado por teclado.
8. MCD - Realizar un programa en Pseudocdigo y en C que calcule el mcd de dos
nmeros dados por teclado de forma recursiva. Para ello
9. Torres de Hanoi - Realizar un programa en Pseudocdigo y en C que simule el
juego de las Torres de Hanoi. El juego consiste en tres postes y una serie de ruedas
colocadas en los postes de forma que una rueda est siempre sobre otra de mayor
dimetro. El juego consiste en dado un nmero de ruedas en el primer poste, hacer
los movimientos necesarios para pasar todas las ruedas al ltimo poste, teniendo en
cuenta siempre que no podemos poner una rueda sobre otra de menor dimetro.
10. Laberinto - Realizar un programa en Pseudocdigo y en C que dada una matriz
20x20 representando una laberinto, encuentre la salida de forma recursiva. Las
paredes se representarn con un 1, los pasillos con un 0, la entrada con un 2 y la
salida con un 3. el programa preguntar primero la composicin del laberinto, y a
continuacin nos indicar el camino para la salida, si es que lo hubiera.
HOJA 5
Pgina 20 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 6 (REGISTROS)
1. Persona Realizar un programa en Pseudocdigo y en C que lea una tabla de 3
elementos de tipo Persona. Dicho tipo consiste en un campo cdigo de tipo
numrico, un campo nombre de tipo cadena y un campo apellidos de tipo cadena. El
programa mostrar por pantalla los datos introducidos.
2. Persona2 Realizar el ejercicio Persona utilizando los otros dos tipos de
estructuras que existen en C.
3. Alumno - Realizar un programa en Pseudocdigo y en C que lea una tabla de 5
elementos de tipo Alumno. Dicho tipo consiste en un campo cdigo de tipo
numrico, un campo nombre completo de tipo cadena y un campo curso de tipo
tcurso. Dicho tipo tcurso consiste en un campo curso de tipo numrico y un campo
clase de tipo carcter. El programa mostrar por pantalla los datos introducidos
agrupados por curso.
4. Factura - Realizar un programa en Pseudocdigo y en C que lea una tabla de 5
elementos de tipo Factura. Dicho tipo consiste en un campo cdigo de tipo
numrico, un campo fecha de tipo tfecha y un campo cantidad de tipo real. Dicho
tipo tfecha consiste en un campo da de tipo numrico, un campo mes de tipo
numrico y un campo ao de tipo numrico. El programa mostrar por pantalla los
datos introducidos.
5. Vehculo - Realizar un programa en Pseudocdigo y en C que lea una tabla de 5
elementos de tipo Vehculo. Dicho tipo consiste en un campo cdigo de tipo
numrico, un campo marca de tipo cadena, un campo modelo de tipo cadena y un
campo precio de tipo numrico. El programa ordenar la tabla por precio y mostrar
TODOS los vehculos con un precio indicado por teclado.
6. Animal - Realizar un programa en Pseudocdigo y en C que lea una tabla de 5
elementos de tipo Animal. Dicho tipo consiste en un campo cdigo de tipo
numrico, un campo raza de tipo cadena, un campo hbitat de tipo cadena y un
campo alimentacin de tipo cadena. El programa ordenar la tabla por Hbitat y
mostrar TODOS los animales con un hbitat indicado por teclado.
7. Artculo Realizar un programa que lea y muestre una tabla de 5 elementos de tipo
Artculo. Dicho tipo se compone de un Cdigo, una Descripcin y un IVA que ser
calculado en funcin de la tabla que sigue:
Primera necesidad: 6%
Primarios: 10%
Consumo: 16%
Lujo: 20%
8. ONG Tenemos una estructura que contiene el nombre de una ONG y una tabla
2x2. La primera columna contiene los datos de dos oficinas en Huelva, la segunda,
los de dos oficinas de Granada. De cada oficina tenemos los siguientes datos: su
HOJA 6
Pgina 21 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 6
Pgina 22 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 6
Pgina 23 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 7 (FICHEROS)
1. Guardar Cadena - Realizar un programa en Pseudocdigo y en C que lea una
cadena por teclado y la guarde en el fichero de texto fich1.txt
2. Leer Cadena - Realizar un programa en Pseudocdigo y en C que muestre por
pantalla el contenido del fichero de texto fich1.txt
3. Aadir Cadena - Realizar un programa en Pseudocdigo y en C que lea una cadena
por teclado y la aada al contenido del fichero de texto fich1.txt. Realizar la
prueba ejecutando de nuevo el ejercicio Leer Cadena.
4. Asterisco - Realizar un programa en Pseudocdigo y en C que lea caracteres por
teclado hasta escribir un *. Guardar todos los caracteres pulsados en el fichero
fich2.txt.
5. Fichero como argumento - Realizar un programa en Pseudocdigo y en C al que
se le pase como argumento del main el nombre de un fichero de texto. El programa
mostrar por pantalla el contenido de dicho fichero.
6. Comparar - Realizar un programa en Pseudocdigo y en C que lea el nombre de
dos ficheros de texto como argumentos del main y nos diga si los ficheros son
iguales o no.
7. Copiar - Realizar un programa en Pseudocdigo y en C que lea el nombre de dos
ficheros de texto por teclado y copie el contenido del primero en el segundo. Si el
segundo no existe se crear y si existe, se machacar el contenido.
8. Copiar2 Hacer las modificaciones necesarias al ejercicio Copiar para que
compruebe si el fichero segundo existe o no. En caso de existir, que pregunte si
machaca la informacin o si la aade al final.
9. Contar - Realizar un programa en Pseudocdigo y en C que lea el nombre de un
fichero de texto por teclado y nos cuente el nmero de vocales, el nmero de
consonantes y el nmero de signos de puntuacin (incluido el espacio) que tiene.
Mostrar por pantalla el resultado.
10. Buscar - Realizar un programa en Pseudocdigo y en C que lea el nombre de un
fichero como argumento del main y una palabra, tambin como argumento. El
programa nos dir si la palabra existe o no en dicho fichero.
11. Contar Palabras - Realizar un programa en Pseudocdigo y en C que lea el
nombre de un fichero de texto por teclado y una palabra. El programa devolver las
veces que aparece dicha palabra en el fichero. Si no se encuentra ninguna vez, se
devolver un 0.
HOJA 7
Pgina 24 de 33
EJERCICIOS PROGRAMACIN
JERG
Pgina 25 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 7
Pgina 26 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 7
Pgina 27 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 8
Pgina 28 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 9
Pgina 29 de 33
EJERCICIOS PROGRAMACIN
JERG
12. Bsqueda Realizar un mdulo que reciba una Lista de tipo t y un elemento del
mismo tipo. El mdulo devolver un 0 en caso de no encontrar dicho elemento o
bien un nmero indicando la posicin donde se ha encontrado dicho elemento.
Tener en cuenta que deben coincidir tanto el cdigo como el nombre. Si la lista
estuviese vaca, se devolver un 1.
13. Pila - Realizar un programa en Pseudocdigo y en C que maneje una Pila. Los
elementos que meteremos en la pila ser un tipo denominado telemento compuesto
por un entero y un puntero. Permitir agregar, mostrar la pila completa y sacar de la
pila un elemento, borrndolo seguidamente.
14. Cola - Realizar un programa en Pseudocdigo y en C que maneje una Cola. Los
elementos que meteremos en la pila ser un tipo denominado telemento compuesto
por un real y un puntero. Permitir agregar, mostrar por pantalla la cola completa y
sacar de la cola un elemento, borrndolo a continuacin.
15. Lista y Crear Fichero - Realizar un programa en Pseudocdigo y en C que vaya
leyendo un nombre y una edad hasta introducir como nombre un *. Los elementos
introducidos sern insertados en una lista, al final. Tras pulsar el *, mostrar por
pantalla todos los datos de la lista y a continuacin, guardar la informacin (la lista)
en un fichero binario llamado f.f
16. Lista y Leer Fichero - Realizar un programa en Pseudocdigo y en C quesea la
informacin del fichero binario f.f (una lista) y la muestre por pantalla.
17. rbol en inorden - Programa que lea un archivo de texto llamado texto.txt que
contiene una palabra por cada rengln, y cuente la cantidad de veces que aparece
cada palabra, mostrando por pantalla las palabras del rbol en inorden junto con el
nmero de veces que aparecen. (arboles1.cpp)
18. Pasar por Nodos- Realizar un programa similar al anterior pero que muestre por
pantalla tambin el nmero de nodos que hay que pasar para llegar a cada palabra.
19. Promedio - Aadir al ejercicio anterior el clculo del promedio de nodos que se
deben recorrer para llegar a cada palabra dividiendo el nmero de palabras totales
por el nmero de nodos que hay que pasar para llegar a cada una de ellas.
20. Definir - Definir los siguientes predicados sobre rboles binarios:
Es_arbolB_nat(A) A es un rbol binario de naturales
raiz(R,A) R es la raz de A
hoja(H,A) H es una hoja de A
miembro(X,A) X es elemento de A
padre(X,Y,A) X es padre de Y en A
hijo(X,Y,A) X es hijo de Y en A
descendiente(X,Y,A) X es descendiente de Y en A
ascendente(X,Y,A) X es ascendiente de Y en A
HOJA 9
Pgina 30 de 33
EJERCICIOS PROGRAMACIN
JERG
HOJA 9
Pgina 31 de 33
EJERCICIOS PROGRAMACIN
JERG
E
I
A
C
B
E
I
A
K
C
B
G
H
A
C
B
G
F
29. Maysculas - Dado un rbol binario X con letras maysculas almacenadas en los
nodos (es decir, con un mximo de 26 nodos, pues excluimos la '' y la ''),
construir un programa que calcule el recorrido en preorden de un rbol binario que
contiene las letras de un frase dada por teclado.
30. Definir en rboles de bsqueda - Define los siguientes predicados sobre rboles
de bsqueda:
inserta(X,A,AX) AX es el rbol que resulta de insertar X en A
esta(X,A) X est en A
no esta(X,A) X no est
borra(X,AX,A) A es el rbol que resulta de borrar X de AX
31. rbol hoja - Un rbol hoja es un rbol binario no vaco que almacena informacin
slo en las hojas. Define los siguientes predicados sobre rboles hoja:
es_arbolH_nat(A) A es un rbol hoja de naturales
miembro(X,A) X es elemento de A
HOJA 9
Pgina 32 de 33
EJERCICIOS PROGRAMACIN
JERG
esta(X,A) X est en A
no_esta(X,A) X no est en A
sustituye(X,Y) sustituye todas las X por Y
subarbol(A,B) A es subrbol de B
simetricos(A,B) A y B son simtricos
isomorfos_estruc(A,B) A y B tienen la misma estructura
isomorfos_ramas(A,B) A y B tienen las mismas ramas
num_hojas(A,N) A tiene N hojas
profundidad(A,P) P es la profundidad de A
maximo(A,M) M es el mximo de A
suma(A,S) S es la suma de las hojas de A
32. Camino rbol hoja - Define un predicado camino(X,A,Cs) que, dado un rbol hoja
A, se satisfaga si la lista Cs contiene un camino desde la raz de A hasta una hoja X.
El camino debe almacenar los lados del rbol por los que se desciende hasta llegar a
la hoja X.
33. rbol n-ario - Un rbol n-ario puede ser vaco o bien tener una raz y un nmero
arbitrario n de hijos, representado por una lista de rboles n-arios, es decir, cada
nodo tiene una raz y una lista con sus hijos, que son a su vez rboles, n-arios.
Define los siguientes predicados sobre rboles n-arios:
es_arbolN_nat(A) A es un rbol n-ario de naturales
miembro(X,A) X es elemento de A
esta(X,A) X est en A
no esta(X,A) X no est en A
sustituye(X,Y) sustituye todas las X por Y
subarbol(A,B) A es subrbol de B
simetricos(A,B) A y B son simtricos
isomorfos_estruc(A,B) A y B tienen la misma estructura
num_nodos(A,N) A tiene N hojas
profundidad(A,P) P es la profundidad de A
maximo(A,M) M es el mximo de A
suma(A,S) S es la suma de los nodos de A
HOJA 9
Pgina 33 de 33