Вы находитесь на странице: 1из 33

EJERCICIOS PROGRAMACIN JERG

HOJA 1 Pgina 1 de 33
HOJA 1 (Funciones y Procedimientos)
1. Hola Mundo- Realizar un programa en Pseudocdigo y en C que muestre por
pantalla la frase Hola, mundo.

2. Suma- Realizar un programa en Pseudocdigo y en C que lea dos nmeros enteros
por teclado y muestre la suma de ambos.

3. Par Impar Realizar un programa en Pseudocdigo y en C que lea un nmero y
nos diga si el nmero es par o si es impar.

4. Pares- Realizar un programa en Pseudocdigo y C que lea dos nmeros y me
indique los nmeros pares que hay entre ellos.

5. Suma Pares Producto Impares Realizar un programa en Pseudocdigo y en C
que calcule la suma de los 20 primeros nmeros pares y el producto de los 20
primeros nmeros impares simultneamente.

6. Dividir- Realizar un programa en Pseudocdigo y C que lea dos nmeros y
mediante una funcin, calcule la divisin de ambos.

7. Compara- Realizar un programa en Pseudocdigo y en C que lea dos nmeros por
teclado e indique si son iguales o cul es mayor de los dos.

8. Potencia - Realizar un programa en Pseudocdigo y en C que calcule la potencia
de un nmero leyendo por teclado el valor de su base y su exponente.

9. Segn - Realizar un programa en Pseudocdigo y en C que lea dos nmeros
enteros a y b por teclado. Si a<b obtener su suma. Si a>=b, obtener su
multiplicacin.

10. Veces- Realizar un programa en Pseudocdigo y en C que lea dos nmeros enteros
por teclado. El primero nos dir el nmero de veces que debe escribirse el segundo
introducido.

11. Mayor Suma - Realizar un programa en Pseudocdigo y en C que vaya leyendo
nmeros enteros por teclado hasta introducir un nmero mayor que la suma de los
dos anteriores.

12. Intercambio-Realizar un programa en Pseudocdigo y en C que lea dos nmeros
por teclado e intercambie sus valores.(2 versiones)

13. Suma Funcin- Realizar un programa en Pseudocdigo y en C que lea dos nmeros
enteros por teclado y muestre la suma de ambos mediante una funcin.

14. Tabla Multiplicar- Realizar un programa en Pseudocdigo y en C que lea un
nmero por teclado y escriba su tabla de multiplicar del 0 al 10.
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 2 de 33
15. Potencia- Realizar un programa en Pseudocdigo y en C que calcule a elevado a b
mediante una funcin.

16. Meses - Realizar un programa en Pseudocdigo y en C que lea un entero entre 1 y
12 y escriba por pantalla el nombre del mes al que corresponde.

17. Concatenar caracteres- Realizar un programa en Pseudocdigo y en C que lea dos
letras por teclado y las concatene y muestre por pantalla .

18. Expresin-Realizar un programa en Pseudocdigo y en C que calcule mediante una
funcin la siguiente expresin:
19. Ordena3nmeros- Realizar un programa en Pseudocdigo y en C que lea tres
nmeros enteros y los ordene de mayor a menor.

20. Operaciones - Realizar un programa en Pseudocdigo y en C que lea dos nmeros
enteros por teclado y calcule su suma, su resta, su producto y su cociente cuando
fuera posible.

21. Operaciones2 - Realizar un programa en Pseudocdigo y en C que lea dos
nmeros enteros por teclado y calcule su suma, su resta, su producto y su cociente
cuando fuera posible.

22. Operaciones3- Realizar un programa en Pseudocdigo y en C que lea tres nmeros
por teclado y calcule, mediante funciones, su suma, su producto y su media. En esta
funcin usaremos la otra funcin de suma antes creada.

23. Tipos de Tringulos - Realizar un programa en Pseudocdigo y en C que lea tres
nmeros por teclado y nos diga si se tratan de los lados de un tringulo equiltero,
escaleno o issceles.

24. Binario a Decimal - Realizar un programa en Pseudocdigo y en C que lea un
nmero Binario de 5 cifras por teclado y mediante una funcin calcule el nmero
decimal a que equivale.

25. Suma de Cuadrados- Realizar un programa en Pseudocdigo y en C que calcule la
suma de los cuadrados de los 100 primeros nmeros naturales mediante una
funcin.

26. Suma de Cuadrados Pares- Realizar un programa en Pseudocdigo y en C que
calcule la suma de los cuadrados de los pares entre 1 y 100 mediante una funcin.

27. Pendiente - Realizar un programa en Pseudocdigo y en C que calcule la pendiente
m de una recta dada por dos puntos de la misma (x1,y1) y (x2,y2)
mediante un procedimiento. La frmula es la siguiente:
a
ac b
2
4
2

1 2
1 2
x x
y y
m

=
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 3 de 33
28. 2030-Realizar un programa en Pseudocdigo y en C que pregunte el nombre y la
edad de nacimiento del usuario y d como resultado:
Hola nombre, en el ao 2030 tendrs n aos.

29. Fecha Correcta- Realizar un programa que lea una fecha de la forma dd,mm,aaa y
compruebe si la fecha es correcta. Para saber si un ao es bisiesto, suponiendo que a
sea el ao se deben cumplir una de las dos condiciones siguientes para que lo sea: (a
mod 4)=0 Y (a mod 100)0 O (a mod 400)=0

30. Meses2- Realizar un programa en Pseudocdigo y en C que una vez introducidos
mes y ao, devuelva los das que le pertenecen a dicho mes. Para saber si un ao es
bisiesto, suponiendo que a sea el ao se deben cumplir una de las dos condiciones
siguientes para que lo sea: (a mod 4)=0 Y (a mod 100)0 O (a mod 400)=0

31. Polinomio-Realizar un programa en Pseudocdigo y en C que calcule y visualice en
pantalla el polinomio siguiente:


32. Polinomio2-Variar el anterior problema para que acepte coeficientes variables hasta
un mximo de x
10
.

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
7 2 5 3
3 5
+ x x x
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 4 de 33
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.


44. Conversin Radianes- Realizar un programa en Pseudocdigo y en C que pase de
radianes a grados o viceversa mediante funciones y un men con tres opciones
incluida la de Salir. NOTA: 180 = radianes. Usar constantes #define

32
5
9
+ = s Centgrado Fahrenheit ( ) 32
9
5
= Fahrenheit s Centgrado
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 5 de 33
a
ac b
t
2
4
2

=
45. Euros-Realizar un programa en Pseudocdigo y en C que muestre en pantalla un
Men con las siguientes opciones:
1-Pasar de Pesetas a Euros
2-Pasar de Euros a Pesetas
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. Usar
constantes #define

46. Carcter - Realizar un programa en C que recoja un carcter por teclado y
determine si dicho carcter es una letra mayscula, una letra minscula, un dgito o
un smbolo.

47. Getche-Qu hace el siguiente programa?
#include<stdio.h>
#include<conio.h>
void main()
{
char car;
printf(\n Desea continuar?);
car=getche();
while(car!=s &&car!=n)
{
printf(\nDesea continuar?);
car=getche();
}
}

48. Races de Segundo Grado- Realizar un programa en Pseudocdigo y en C que
calcule las races de un polinomio de segundo grado de la forma:

49. Races de Segundo Grado Complejos- Ampliar el anterior problema para que
calcule races imaginarias de la forma x= sti de donde:




50. Trigonometra - Realizar un programa en Pseudocdigo y en C que muestre un
men para calcular senos, cosenos y tangentes mediante funciones. Calcular en
grados y en radianes. Tener en cuenta en el men la opcin de Salir. Usar constantes
#define

a
ac b b
x
2
4
2

=
a
b
s
2

=
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 6 de 33
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:
54. Esfera- Realizar un programa en Pseudocdigo y en C que calcule el volumen de
una esfera.
55. Tringulo Rectngulo- Realizar un programa en Pseudocdigo y en C que muestre
por pantalla lo siguiente:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9

36000
crt
I =
3
3
4
r V =
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 7 de 33
56. Tringulo - Realizar un programa en Pseudocdigo y en C que muestre por pantalla
lo siguiente:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9

57. Tarot- Realizar un programa que calcule el nmero de Tarot de una persona. El
nmero Tarot se calcula reduciendo a un nmero la fecha de nacimiento de una
persona. Ejemplo: 19 de Junio de 1973 19+6+1973 =1988 1+9+8+8= 27
2+7=9. Este es el nmero Tarot, el nmero 9.

58. Primo- Realizar un programa que mediante una funcin lea un nmero y
compruebe que dicho nmero es mayor que 2. Una vez ledo, lo pasaremos a un
procedimiento que indicar si dicho nmero es primo o no. Un nmero es primo si
existe algn divisor entero de l entre el nmero 2 y la mitad de dicho nmero a
calcular si es primo o no.

59. Primos - Realizar un programa en Pseudocdigo y en C que lea dos nmeros por
teclado y mediante una funcin, nos diga si los nmeros son primos o no entre s.
Dos nmeros son primos entre s, si no tienen otro divisor comn diferente al 1.

60. Primos2 - Realizar un programa en Pseudocdigo y en C que lea una secuencia de
nmeros enteros e indique cules son primos. La lectura de dichos nmeros acabar
al introducir un 0.

61. Nmero Monedas - Realizar un programa en Pseudocdigo y en C que leda una
cantidad en Euros, nos diga el nmero de billetes y monedas mnimo que componen
dicha cantidad.

62. Domingo de Ramos - Realizar un programa en Pseudocdigo y en C que dado un
ao por teclado nos diga en qu da caer el Domingo de Ramos de dicho ao. Para
realizar dicho calculo tener en cuenta lo siguiente:
Si X es el ao en cuestin:
A = X mod 19
B = X mod 4
C = X mod 7
D = (19*A+24) mod 30
E = (2*B+4*C+6*D+5) mod 7
El Domingo de Ramos ser el 22 de Marzo de dicho Ao + D + E, teniendo en
cuenta que puede caer en Abril.

EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 8 de 33
63. Inversamente - Realizar todos los programas anteriores en Pseudocdigo y en C,
pero ahora si se haba hecho mediante una funcin hacerlo con un procedimiento y
viceversa.

64. Librera Realizar un programa en Pseudocdigo y en C, que cree una librera
llamada miLib.h con las implementaciones de las funciones suma, resta y producto
de enteros mandados como parmetros. Realizar un programa que use dicha librera
y sume, reste y multiplique dos nmeros dados por teclado.

65. Libreras Buscar en Internet libreras de funciones en C y realizar programas que
las usen. Realizar tambin la documentacin de uso de dichas funciones.

66. Decimal a Fraccin Realizar un programa que dado un nmero decimal exacto,
peridico puro o peridico mixto, calcule la fraccin equivalente. NOTA: Para el
caso de los peridicos, la forma de calcular dicha fraccin consiste en poner como
numerador, el valor que se obtiene de restar a los dgitos que no pertenecen al
periodo y un periodo, el valor de los dgitos que no pertenecen al periodo. Como
denominador tendremos un 9 por cada cifra peridica seguidos de tantos ceros como
cifras no peridicas haya en la parte decimal.

67. Cilindro - Realizar un programa en Pseudocdigo y en C que calcule el rea lateral
y el volumen de un cilindro recto, introduciendo por teclado los valores del radio y
de la altura.
rh AL = 2
h r V
2
=

68. Tienda - Realizar un programa en Pseudocdigo y C que gestione una tienda de
repuestos. Al realizar una venta se introducir el precio de la pieza, la clase de
comprador y el tipo de pieza. Mediante una funcin calcularemos y devolveremos el
precio a pagar teniendo en cuenta que los descuentos a efectuar estn en funcin de
la clase de comprador (clase A: 2%, clase B: 4% y clase C: 6%) y del tipo de pieza
(Tipo 1: 8% y tipo 2: 10%). Se termina la introduccin de datos cuando un precio
sea cero y se desea visualizar el importe total obtenido en las ventas efectuadas.

69. Primitiva - Realizar un programa en Pseudocdigo y C que calcule una
combinacin de la lotera primitiva, es decir, 6 nmeros y un complementario.

70. Dado - Realizar un programa en Pseudocdigo y C que simule las tiradas de un
dado. Indicarle el nmero de tiradas a realizar.

71. Quiniela - Realizar un programa en Pseudocdigo y C que muestre por pantalla una
posible combinacin de una quiniela, es decir, 14 ms el pleno al quince.

72. Distancia entre puntos - Realizar un programa en Pseudocdigo y C que calcule la
distancia entre dos puntos dados por teclado. La frmula para calcularla es la
siguiente:
EJERCICIOS PROGRAMACIN JERG
HOJA 1 Pgina 9 de 33

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.



EJERCICIOS PROGRAMACIN JERG
HOJA 2 Pgina 10 de 33
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

EJERCICIOS PROGRAMACIN JERG
HOJA 2 Pgina 11 de 33
12. Comparar - Realizar un programa en Pseudocdigo y en C que lea dos palabras y
nos indique mediante una funcin cul de las dos es mayor alfabticamente. No usar
la librera string.h

13. Mayor - Realizar un programa en Pseudocdigo y en C que lea 5 cadenas y nos
diga cul es la mayor de ellas alfabticamente.

14. Cambiar a por o - Realizar un programa en Pseudocdigo y en C que lea una
cadena y cambie todas las vocales a por vocales o.

15. Copiar - Realizar un programa en Pseudocdigo y en C que copie una cadena leda
por teclado en otra. No usar librera string.h.

16. Cambiar a por ha - Realizar un programa en Pseudocdigo y en C que lea una
cadena y cambie todas las vocales a por ha.

17. Quitar espacios - Realizar un programa en Pseudocdigo y en C que lea una
cadena por teclado y obtenga la misma cadena pero sin espacios.

18. Quitar espacios del principio - Realizar un programa en Pseudocdigo y en C que
lea una cadena y quite los espacios que puedan existir al principio de la cadena.

19. Contar vocales - Realizar un programa en Pseudocdigo y en C que lea una
cadena por teclado y mediante una funcin cuente el nmero de vocales.

20. Contar - Realizar un programa en C que lea un texto y calcule el nmero de letras y
de dgitos encontrados en l. El resultado lo mostrar por pantalla.

21. Concatena2 - Realizar un programa en Pseudocdigo y en C que lea dos cadenas y
las concatene dejando un espacio entre las dos.

22. Inversa - Realizar un programa en Pseudocdigo y en C que lea una cadena y
mediante una funcin, devuelva la inversa de la misma. No usar la librera string.h

23. Descomponer - Realizar un programa en Pseudocdigo y en C que lea una cadena
y la descomponga en palabras mostrando cada una en una lnea diferente.

24. Cuenta Palabras - Realizar un programa en Pseudocdigo y en C que lea una
cadena por teclado y mediante una funcin cuente el nmero de palabras que hay en
dicha cadena.

25. Invertir palabras - Realizar un programa en Pseudocdigo y en C que lea cadenas
por teclado y las muestre invertidas hasta introducir la palabra Salir. No usar la
librera string.h

26. Repetidas - Realizar un programa en Pseudocdigo y en C que lea una cadena por
teclado y cambie las letras repetidas contiguas por un *. Ejemplo:
EJERCICIOS PROGRAMACIN JERG
HOJA 2 Pgina 12 de 33

Estoo es unna prrrrueba Esto* es un*a pr***ueba

27. Encriptar - Realizar un programa en Pseudocdigo y en C que lea una cadena y la
encripte cambiando una letra por la que le sigue en el abecedario. La z cambiarla
por la a.

28. Encriptar2 - Realizar un programa en Pseudocdigo y en C que lea una cadena y
un nmero y la encripte cambiando cada letra por la letra del abecedario situada a la
distancia indicada por el nmero dado. Al llegar a la z volver a la a.

29. Desencripta - Realizar un programa en Pseudocdigo y en C que lea una palabra
encriptada y un nmero y la desencripte segn el mtodo del programa anterior.

30. Cuenta letras - Realizar un programa en Pseudocdigo y C que lea una frase y nos
muestre por pantalla el nmero de veces que aparece cada letra de la frase.

31. Cuenta palabras - Realizar un programa en Pseudocdigo y C que lea una frase y
nos muestre por pantalla el nmero de veces que aparece una palabra en concreto en
dicha frase.

32. Parmetros del Main - Realizar un programa en C al que se le enve como
parmetro una cadena y la encripte como en el ejercicio Encriptar.

33. Parmetros del Main2 - Realizar un programa en C al que se le enve como
parmetro una cadena y la desencripte como en el ejercicio Desencripta.

34. Cambiar formato hora - Realizar un programa en Pseudocdigo y C que lea una
hora del tipo 23:45 y lo transforme en una hora del tipo 11:45 pm.

35. Intercalar - Realizar un programa en Pseudocdigo y C que lea dos cadenas y una
posicin. El programa nos mostrar la segunda cadena intercalada en la primera a
partir de la posicin indicada. Realizar el mismo programa en C usando argc y argv.

36. Palndromo - Realizar un programa en Pseudocdigo y C que lea una cadena por
teclado y nos diga si dicha cadena es un palndromo o no. Una palndromo es una
cadena que se lee igual de izquierda a derecha que de derecha a izquierda.
Ejemplos: ANA, OSO, ...Los espacios en blanco no se tienen en cuenta.

37. Buscar - Realizar un programa en Pseudocdigo y C que dada dos cadenas, busque
la segunda en la primera, devolviendo la posicin en que se encuentra o bien un 1
si no se encuentra.

38. Cambiar palabras - Realizar un programa en Pseudocdigo y C que lea tres
cadenas. El programa buscar en la primera cadena, la segunda cadena, y la
sustituir por la tercera.

EJERCICIOS PROGRAMACIN JERG
HOJA 2 Pgina 13 de 33
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.

EJERCICIOS PROGRAMACIN JERG
HOJA 3 Pgina 14 de 33
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.


EJERCICIOS PROGRAMACIN JERG
HOJA 3 Pgina 15 de 33

13. Parmetros del Main - Realizar un programa en Pseudocdigo y C al que se le
enve como parmetro un nombre y nos muestre por pantalla el mensaje Hola
nombre siendo nombre el parmetro introducido.

14. Parmetros del Main2 - Realizar un programa en Pseudocdigo y C al que se le
enven como parmetros dos enteros y nos calcule la suma de ambos, que mostrar
por pantalla.

15. Parmetros del Main3 - Realizar un programa en Pseudocdigo y C al que se le
enven como parmetros dos enteros y nos calcule la suma de los cuadrados de
dichos nmeros y los muestre por teclado.

16. Parmetros del Main4 - Realizar un programa en Pseudocdigo y C que reciba el
valor del lado de un cuadrado y calcule y visualice el rea el mismo.

17. Simtrica - Realizar un programa en Pseudocdigo y C que lea una matriz de 3x3 e
indique si es simtrica o no. NOTA: Simtrica si a[i][j]=a[j][i]

18. Traspuesta - Realizar un programa en Pseudocdigo y C que lea una matriz 3x3 y
calcule la Traspuesta, que ser introducida en otra matriz 3x3 y mostrada por
pantalla.

19. Suma - Realizar un programa en Pseudocdigo y C que lea dos matrices 3x3 y
muestre la suma de ambas.

20. Producto matriz y nmero - Realizar un programa en Pseudocdigo y C que lea
un nmero y una matriz 3x3 y multiplique el nmero por la matriz mostrando el
resultado por pantalla.

21. Letra por posicin - Realizar un programa en Pseudocdigo y C que lea una matriz
3x3 de caracteres y nos muestre en otra tabla la posicin en el abecedario de cada
letra introducida.

22. Determinante - Realizar un programa en Pseudocdigo y C que lea una matriz 3x3
y calcule su determinante.

23. Suma2 - Realizar un programa en Pseudocdigo y C que lea por teclado los
elementos de un vector numrico y que visualice la suma de todos los elementos,
utilizando una funcin que calcule y devuelva dicho valor.

24. Antisimtrica - Realizar un programa en Pseudocdigo y C que lea una matriz 3x3
y diga por pantalla si es una matriz antisimtrica o no. NOTA: Antisimtrica si
a[i][j]=-a[j][i]

EJERCICIOS PROGRAMACIN JERG
HOJA 3 Pgina 16 de 33
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.

EJERCICIOS PROGRAMACIN JERG
HOJA 3 Pgina 17 de 33
36. Preguntas y Respuestas - Realizar un programa en Pseudocdigo y C que muestre
3 preguntas al azar de 10 posibles. Mostrar al final de las preguntas el nmero de
aciertos.

37. Suma Pares Impares - Realizar un programa en Pseudocdigo y C que lea una
matriz 3x3 y calcule la suma de las posiciones pares y la suma de las posiciones
impares. Una posicin se dice que es par si i+j es par. El programa calcular
mediante una funcin la diferencia entre dichas sumas.

38. Tabla de cadenas - Realizar un programa en Pseudocdigo y en C que lea 10
cadenas y las inserte en una tabla de cadenas para su posterior mostrado en pantalla.
Usar scanf(%[^\n],tabla[i]); y tambin gets(tabla[i]);

39. Ordenacin por Intercambio - Realizar un programa en Pseudocdigo y C que lea
una matriz de 10 enteros y los ordene por el mtodo de Intercambio de mayor a
menor.

40. Ordenacin por Seleccin - Realizar un programa en Pseudocdigo y C que lea
una matriz de 10 reales y los ordene por el mtodo de Seleccin de mayor a menor.

41. Ordenacin por Insercin - Realizar un programa en Pseudocdigo y C que lea
una matriz de 10 caracteres y los ordene por el mtodo de Insercin de menor a
mayor.

42. Ordenacin por Burbuja - Realizar un programa en Pseudocdigo y C que lea una
matriz de 10 enteros y los ordene por el mtodo de la Burbuja de menor a mayor.

43. Bsqueda secuencial - Realizar un programa en Pseudocdigo y C que lea una
matriz de 10 reales y busque un nmero dado por teclado. Se nos indicar la
posicin en la tabla o un 1 si no est.

44. Bsqueda binaria - Realizar un programa en Pseudocdigo y C que lea una matriz
de 10 enteros, los ordene por Seleccin y busque un nmero dado por teclado. Se
nos indicar la posicin en la tabla o un 1 si no est.

45. Bsqueda secuencial2 - Realizar un programa en Pseudocdigo y C que lea una
matriz de 10 reales y busque un nmero dado por teclado. El programa devolver
todas las posiciones donde se encuentra dicho nmero o un 1 si no se encuentra.

46. Tres en raya - Realizar un programa en Pseudocdigo y en C que simule el juego
del tres en raya para 1 2 jugadores. Realizar el programa de forma modular con
comprobacin de errores.

EJERCICIOS PROGRAMACIN JERG
HOJA 3 Pgina 18 de 33
47. Ascensor - Realizar un programa en Pseudocdigo y en C que simule un ascensor
de 3 plantas. El ascensor mostrar por pantalla el men siguiente:
El programa simular el movimiento del ascensor suponiendo que empezamos en la
planta primera, indicando los pisos que se sube, si se cierran las puertas, si se
abren,...

48. Buscaminas - Realizar un programa en Pseudocdigo y en C que simule un tablero
del juego de buscaminas de 10x10 con 5 minas en el tablero. El programa ir
pidiendo coordenadas y tendremos que mostrar los siguientes caracteres en pantalla:
Un * en un lugar sin tratar, un espacio en blanco donde no haya mina ni siquiera
en las adyacentes y un nmero en las casillas que tengan adyacente minas. El
nmero indicar la cantidad de minas adyacentes. El programa nos permitir en
cada nueva jugada, indicar donde creemos que hay una mina, sealndose con una
M. El juego terminar cuando pisemos una mina o cuando hayamos encontrado
las 5 minas.

49. Ahorcado - Realizar un programa en Pseudocdigo y en C que simule el juego del
ahorcado. El programa tendr en memoria una tabla con 20 posibles palabras y en
cada jugada obtendr una de ellas. En pantalla ser mostrada una - por cada letra
de la palabra a adivinar. Tendremos 10 posibilidades para acertar la palabra. Por
cada letra acertada, se sustituir su - con la letra correspondiente. Tambin se
deben mostrar las letras dadas que no estn en la palabra. Las letras sern leidas por
teclado. Mostrar men con las posibles opciones.


1 PLANTA PRIMERA
2 PLANTA SEGUNDA
3 PLANTA TERCERA
4 ABRIR PUERTAS
5 - PARAR
EJERCICIOS PROGRAMACIN JERG
HOJA 4 Pgina 19 de 33
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:
2
2 1
d
m m
G F
+
= donde G=6,67*10
-11
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.

9. Puntero a funcin Realizar un programa en C que mediante un puntero a
funcin, calcule la raz cuadrada de un nmero dado por teclado. Int (*punt)();
EJERCICIOS PROGRAMACIN JERG
HOJA 5 Pgina 20 de 33
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.


EJERCICIOS PROGRAMACIN JERG
HOJA 6 Pgina 21 de 33
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
EJERCICIOS PROGRAMACIN JERG
HOJA 6 Pgina 22 de 33
cdigo alfanumrico y su 5 ltimos donativos recibidos. Realizar un programa que
rellene los datos de toda la estructura y saque por pantalla el cdigo de una oficina y
sus donativos en orden de mayor a menor. Primero debern aparecer las oficinas de
Granada y despus las de Huelva, apareciendo los nombres de estas ciudades como
cabecera, se deber usar el algoritmo de insercin.

9. Inmobiliaria Una inmobiliaria alquila pisos de cuatro zonas de Sevilla: Nervin,
Triana, Los Remedios y el Centro. En cada zona hay 30 pisos. Para cada piso
guarda los siguientes datos: direccin, precio de alquiler y datos del dueo. Del
dueo debemos saber su nombre, direccin y telfono de contacto. Realizar una
funcin o procedimiento que reciba la estructura de datos y el precio mximo que
un cliente puede pagar por un piso e imprima por pantalla los pisos que cuestan esa
cantidad o una inferior. Se deben imprimir por zona, indicando la direccin, el
precio, el nombre y el telfono de contacto del dueo.

10. Proveedores Escribir un programa con diseo modular que en su funcin
principal defina una tabla de 5 proveedores empleando una estructura o registro
declarada globalmente con los datos de cada proveedor (nombre, cantidad vendida y
precio unitario). La funcin principal llamar a dos procedimientos, el primero que
cargue los datos en la tabla y el segundo que muestre el nombre del proveedor ms
barato y el nombre del proveedor ms caro.

11. Otro Tipo de Registro Dada la siguiente estructura:

struct catalogo
{
int identif;
char titulo[15];
char autor[35];
char editorial[20];
float precio;
};
Se pide definir una tabla de 5 elementos del tipo catlogo, introducir los
datos por teclado y luego mostrar los ttulos correspondientes a un autor introducido
por teclado. Si no se encuentra el autor, se mostrar un mensaje indicndolo.

12. Congreso Se organiza un congreso de investigacin de software. Los
participantes pueden ser sujetos individuales o empresas patrocinadoras. De cada
persona individual necesitamos saber su nombre y apellidos, dni y empresa de la
que viene (en el caso de que sea estudiante, la empresa ser estudios). De cada
empresa sabremos su nombre, cif, el dni de su responsable y la cantidad de dinero
donada. Podrn participar 20 empresas y 100 personas individuales. Realizar un
programa que permita introducir una persona o una empresa, imprimir por pantalla
el nombre de los responsables de las empresas participantes que adems han venido
como individuales tambin que permita obtener por pantalla la lista de las empresas
patrocinadoras junto con el dinero aportado.

EJERCICIOS PROGRAMACIN JERG
HOJA 6 Pgina 23 de 33
13. Temperaturas Partiendo de la siguiente declaracin de estructura:

struct temperaturas
{
char pais[20];
float temp_max;
float temp_min;
};
Escribir un programa que defina una tabla de 8 pases e introduzca los datos por
teclado. A continuacin, mostrar los nombres de los pases con temperatura
mxima mayor que la media de las temperaturas mximas y el nombre para los
pases que tenga una temperatura mnima menor que la media de las temperaturas
mnimas

14. Ordenar Utilizar los mtodos de ordenacin vistos para tablas de registros.

15. Bsqueda - Utilizar los mtodos de bsqueda vistos para tablas de registros.

16. Empresas - Partiendo de la siguiente estructura:
struct empresa
{
int identif;
char nombre[15];
char direccion[35];
long telefono;
};
Se pide escribir un programa modular que defina una tabla de 10 empresas y
establezca un men que llame a una serie de funciones que debern realizar las tareas
siguientes:
Introducir todos los datos de las empresas
Visualizar todos los datos de todas las empresas
Visualizar datos de una empresa determinada al introducir su identif
Borrar todos los datos de determinadas empresas
EJERCICIOS PROGRAMACIN JERG
HOJA 7 Pgina 24 de 33
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.

EJERCICIOS PROGRAMACIN JERG
HOJA 7 Pgina 25 de 33
12. Concatenar - Realizar un programa en Pseudocdigo y en C que concatene el
contenido de dos ficheros de texto dados por teclado. La informacin completa se
guardar en el primer fichero.

13. Entero - Realizar un programa en Pseudocdigo y en C que guarde en el fichero
binario uno.bin un entero dado por teclado.

14. Leer Entero - Realizar un programa en Pseudocdigo y en C que muestre por
pantalla el contenido del fichero binario uno.bin

15. Tabla 10 enteros - Realizar un programa en Pseudocdigo y en C que lea una tabla
de 10 enteros por teclado y la guarde en un fichero binario llamado tabla1.dat

16. Tabla 10 enteros 2 - Realizar un programa en Pseudocdigo y en C que lea una
tabla de 10 enteros por teclado y vaya metindolos uno por uno en un fichero
binario llamado tabla2.dat

17. Leer tabla 10 enteros - Realizar un programa en Pseudocdigo y en C que muestre
el contenido (tabla de 10 enteros) del fichero binario cuyo nombre ser dado por
teclado

18. Tabla 10 reales - Realizar un programa en Pseudocdigo y en C que lea una tabla
de 10 nmeros reales y los guarde en un fichero binario llamado tabla3.dat

19. Leer tabla 10 reales - Realizar un programa en Pseudocdigo y en C que muestre
el contenido (tabla de 10 reales) del fichero binario cuyo nombre ser dado por
teclado.

20. Persona - Realizar un programa en Pseudocdigo y en C que rellene una tabla de 5
elementos de tipo Persona compuesto de un cdigo , un nombre y una edad. Una
vez rellena por teclado, se guardar en un fichero binario llamado persona.per.

21. Leer Persona - Realizar un programa en Pseudocdigo y en C que muestre por
pantalla el contenido del fichero binario persona.per.

22. Notas - Realizar un programa en Pseudocdigo y en C que dada la estructura Notas,
con un cdigo, un nombre, un curso y una nota, lea por teclado una tabla de 5
elementos de tipo Notas. El programa guardar dicha tabla en un fichero binario
llamado notas.bin.

23. Leer Notas - Realizar un programa en Pseudocdigo y en C que lea el fichero
binario notas.bin y muestre el contenido (tabla de 5 elementos de tipo notas) por
pantalla.

24. Analizar Notas - Realizar un programa en Pseudocdigo y en C que lea el fichero
binario notas.bin y obtenga por pantalla la nota media, el alumno con mejor nota
y el alumno con peor nota.
EJERCICIOS PROGRAMACIN JERG
HOJA 7 Pgina 26 de 33

25. Ordenar Notas - Realizar un programa en Pseudocdigo y en C que lea el fichero
binario notas.bin, ordene dicho fichero por nota y lo guarde en otro fichero
binario notas.ord.

26. Colegio - Realizar un programa en Pseudocdigo y en C que usando la estructura
del ejercicio Notas, nos permita guardar la informacin de un colegio compuesto
por 6 cursos y cada curso con 2 grupos. Se crear un fichero por cada curso con
nombre cursoX.bin donde X corresponde al nmero del curso correspondiente.

27. Listado Colegio - Realizar un programa en Pseudocdigo y en C que lea por
teclado el nombre de un fichero binario de nombre cursoX.bin donde X es el
nmero del curso que queremos analizar. El programa permitir mostrar por
pantalla una listado de alumnos aprobados y otro de alumnos suspensos.

28. Listn - Realizar un programa en Pseudocdigo y en C que dada la estructura Listn
compuesta por un nombre, una direccin y un telfono, genere un fichero binario
con una tabla de 20 elementos de tipo Listn. En los campos nombre y apellidos
meteremos vacio y en el campo telfono meteremos un 0.

29. Uso Listn - Realizar un programa en Pseudocdigo y en C que vaya rellenando la
estructura anterior. Al principio del programa se deber sacar la informacin ya
existente del fichero. Antes de salirse s debern guardar los cambio realizados en el
listn. El programa permitir dar de alta, dar de baja (metiendo vaco , vaco y
0), consultar y salir. Tener en cuenta que al dar de alta, debemos hacerlo en el
primer lugar que encontremos con vaco.

30. Libros - Realizar un programa en Pseudocdigo y en C que se asemeje al Listn
pero cambiando la estructura Listn por la estructura Libro, compuesta por un
cdigo, un autor, un libro y una estantera. Los valores nulos sern vaco para
todos.

31. Acceso Aleatorio - Realizar un programa en Pseudocdigo y en C que acceda
directamente a un elemento del fichero binario tabla1.dat consistente en una tabla
de 10 enteros. La posicin a mostrar ser dada por teclado.

32. Comparar Binarios - Realizar un programa en Pseudocdigo y en C que lea el
nombre de dos ficheros binarios como argumentos del main y compruebe si son
iguales o no. Los ficheros debern estar compuestos por una tabla de 5 enteros cada
uno.

33. Copiar Binario - Realizar un programa en Pseudocdigo y en C que lea el nombre
de un fichero binario por teclado y guarde su informacin en otro fichero binario
llamado copia.bin. El fichero binario estar compuesto por una tabla de 5
nmeros reales.

EJERCICIOS PROGRAMACIN JERG
HOJA 7 Pgina 27 de 33
34. Invertir - Realizar un programa en Pseudocdigo y en C que lea el nombre de un
fichero de texto por teclado, invierta su contenido y lo guarde en el fichero de texto
llamado invert.txt.

35. Quitar Blancos - Realizar un programa en Pseudocdigo y en C que lea un fichero
de texto por teclado y quitando los espacios en blanco guarde el contenido en el
fichero sinblancos.txt.

36. Invertir orden palabras - Realizar un programa en Pseudocdigo y en C que lea el
contenido de un fichero de texto cualquiera dado por teclado, y guarde su contenido
en otro fichero invert.inv invirtiendo el orden de las palabras.

37. Facturas - Realizar un programa en Pseudocdigo y en C que gestione la
facturacin de una empresa. Las facturas constarn de un campo cdigo, una fecha
y un importe. El programa permitir crear una factura, borrar una factura, mostrar
por pantalla todas las facturas y calcular la suma total de las facturas. Las facturas
sern guardadas en un fichero binario llamado Fact.bin donde tendremos una
tabla de 50 facturas.

38. Contador Bytes Realizar un programa en Pseudocdigo y en C que dado un
fichero binario por teclado, lo abra y cuente el nmero de bytes que tiene. Usar
fgetc(fp) mientras no feof(fp)

EJERCICIOS PROGRAMACIN JERG
HOJA 8 Pgina 28 de 33
HOJA 8 (ASIGNACIN DINMICA)
1. Entero - Realizar un programa en Pseudocdigo y en C que reserve memoria para
un entero y lo lea del teclado, tras lo cual lo mostrar por pantalla.

2. Real - Realizar un programa en Pseudocdigo y en C que reserve memoria para un
real y lo lea del teclado, tras lo cual lo mostrar por pantalla.

3. Cadena - Realizar un programa en Pseudocdigo y en C que reserve memoria para
una cadena y la lea del teclado, tras lo cual la mostrar por pantalla.

4. Tabla enteros - Realizar un programa en Pseudocdigo y en C que reserve
memoria para una tabla de enteros. El tamao de la tabla ser dada por teclado, tras
lo cual insertaremos los valores de la tabla. Mostrar por pantalla el contenido
completo de la tabla.

5. Tabla elementos - Realizar un programa en Pseudocdigo y en C que reserve
memoria para una tabla de tipo elemento. El tipo elemento constar de un cdigo,
un nombre y una edad. El tamao de la tabla se dar por teclado. Despus rellenar la
tabla, guardarla informacin en n fichero binario llamado dinamic.bin y mostrar
el contenido completo de la tabla por pantalla.

EJERCICIOS PROGRAMACIN JERG
HOJA 9 Pgina 29 de 33
HOJA 9 (LISTAS, PILAS, COLAS, RBOLES)
1. Lista con 1 elemento - Realizar un programa en Pseudocdigo y en C que cree una
lista con un elemento. Dicho elemento contendr un entero y un puntero a nulo.

2. Insertar en una Lista por el principio - Realizar un programa en Pseudocdigo y
en C que cree una lista insertando siempre por el principio. Cada elemento ser un
real y un puntero. La lista estar inicialmente vaca.

3. Insertar en una Lista por el final Modificar el programa anterior para que la
insercin sea siempre por el final.

4. Insertar en una Lista Modificar el programa anterior para que la insercin sea
por la posicin indicada. Comprobar que se puede insertar en dicha posicin. Si no
se puede, mostrar un mensaje de error y pedir que introduzca otro valor.

5. Men - Realizar un programa en Pseudocdigo y en C que muestre un men para
aadir, visualizar y salir. La opcin aadir permitir aadir un elemento de tipo
t_elemento compuesto por una cadena y un puntero. Se indicar mediante otro
submen la posicin en la que queramos insertar (principio, final, otra posicin). La
opcin visualizar mostrar por pantalla todos los elementos existentes en la lista y la
opcin salir saldr del programa.

6. Eliminar primero Realizar un mdulo en Pseudocdigo y en C que reciba una
Lista con elementos de tipo t (cdigo entero, nombre cadena). A continuacin
debemos borrar el primer elemento. Debemos tener en cuenta que la Lista puede
contener un nico elemento o bien puede estar vaca. Realizar liberacin de
memoria.

7. Eliminar ltimo Realizar otro mdulo parecido al anterior pero que elimine el
ltimo elemento de la Lista mandada como parmetro. Tener en cuenta las mismas
consideraciones que el ejemplo anterior.

8. Eliminar cualquiera Realizar un mdulo que reciba una Lista de tipo t y una
posicin. El mdulo eliminar el elemento indicado por la posicin. Tener en cuenta
que la posicin puede no ser vlida. En dicho caso debemos mostrar un mensaje de
error y dejar la lista tal como est.

9. Eliminar todos Realizar un mdulo que reciba una Lista de tipo t como
parmetro y la borre por completo liberando todo su espacio en memoria.

10. Lista ordenada - Realizar un programa en Pseudocdigo y en C que vaya creando
una lista de tipo elemento (cdigo, nombre, edad y puntero) de forma ordenada por
la edad.

11. Lista ordenada 2 - Realizar un programa en Pseudocdigo y en C que aada las
funciones de borrar y de visualizar al ejercicio Lista ordenada.
EJERCICIOS PROGRAMACIN JERG
HOJA 9 Pgina 30 de 33

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
EJERCICIOS PROGRAMACIN JERG
HOJA 9 Pgina 31 de 33
rama(Rs,A) la lista Rs es una rama 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

21. Definir 2 - Define las siguientes relaciones sobre rboles binarios:
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

22. Definiciones recursivas - Define versiones recursivas (con y sin acumulador) de
los siguientes predicados sobre rboles binarios:
Num_nodos(A,N) A tiene N nodos
profundidad(A,P) P es la profundidad de A
maximo(A,M) M es el maximo de A
suma(A,S) S es la suma de los nodos de A

23. Definir 3 - Define los siguientes predicados de recorrido sobre rboles binarios:
preorden(Rs,A) Rs es una lista con el recorrido en preorden de A
inorden(Rs,A) Rs es una lista con el recorrido en inorden de A
postorden(Rs,A) Rs es una lista con el recorrido en postorden de A
anchura(Rs,A) Rs es una lista con el recorrido en anchura de A

24. Construye rbol - Define un predicado construye_arbol(Ps,Is,A) que reconstruya
un rbol binario A a partir de sus recorridos en preorden Ps e inorden Is.

25. Camino - Define un predicado camino(X, A, Cs) que, dado un rbol binario A, se
satisfaga si la lista Cs contiene un camino desde la raz de A hasta un nodo X. El
camino debe almacenar las races de los nodos que lo componen.

26. Camino entre - Define un predicado camino_entre(X,Y,A,Cs) que, dado un rbol
binario A, se satisfaga si la lista Cs contiene un camino desde un nodo X hasta un
nodo Y. El camino debe almacenar las raices de los nodos que lo componen.

27. Profundidad - Define un predicado nodos_prof_i(I,A,Is) que, dados un rbol
binario A y un entero positivo I, devuelva una lista Is con los nodos de A situados a
profundidad I

28. rbol binario de bsqueda - Un rbol binario de bsqueda es un rbol binario
que se define de la manera siguiente:
a. Todo rbol vaco es un rbol binario de bsqueda.
b. Un rbol binario no vaco es un rbol binario de bsqueda si cumple:
i. Si tiene subrbol izquierdo, entonces debe cumplirse a la vez que:
1. la raz de sea mayor que el valor mximo almacenado en el
subrbol izquierdo de , y
EJERCICIOS PROGRAMACIN JERG
HOJA 9 Pgina 32 de 33
2. el subrbol izquierdo de sea un rbol de bsqueda
ii. Si tiene subrbol derecho, entonces debe cumplirse a la vez que:
1. la raz de sea menor que el valor mnimo almacenado en el
subrbol derecho de , y
2. el subrbol derecho de sea un rbol de bsqueda
El inters de los rboles binarios de bsqueda radica en que su recorrido en inorden
proporciona los elementos ordenados.
Por ejemplo, en la figura siguiente, el rbol de la izquierda es un rbol de bsqueda,
mientras que los otros no lo son: en el primero de ellos, la raz es menor (consideramos el
orden alfabtico) que el mximo del subrbol derecho, mientras que en el segundo, el
subrbol derecho no es de bsqueda.
Se pide que construyis un programa que, dado un rbol binario de bsqueda, que
previamente habremos construido metiendo los valores por teclado, inserte unos cuantos
elementos de manera que, despus de cada insercin individual, el rbol siga siendo de
bsqueda.
Por ejemplo, si se quiere insertar la B, la H y la F en el rbol de la izquierda de la
figura anterior, el resultado despus de cada operacin sera:








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
E
C
A
K
I
G
B
E
C
A
K
I
G
B
H
E
C
A
K
I
G
B
H
F
EJERCICIOS PROGRAMACIN JERG
HOJA 9 Pgina 33 de 33
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

Вам также может понравиться