En esta asignatura soy responsable de un grupo de prácticas,
aquí irán apareciendo materiales para los alumnos de
ese grupo.
En mis grupos de prácticas utilizamos
dev-cpp como
Entorno Integrado de Desarrollo. He preparado unos apuntes
que explican a nivel introductorio el funcionamiento de este
programa.
Marta Fernández ha escrito unos apuntes para
la asignatura, disponibles aquí.
Por
otra parte, los boletines de ejercicios propuestos son los
siguientes:
Estructuras de
control.
Arrays.
Funciones.
Los
exámenes tienen una parte de problemas y otra de test. La
parte de problemas está disponible a continuación, la
de test no la publicamos.
Exámenes de prácticas. De
cara al examen final, usar para auto-evaluarse: intentar hacerlos sin
mirar la solución.
Examen
de if-else-switch modelo
1, modelo
2, solución
1, solución
2
Examen de bucles modelo 1, modelo 2, solución 1, solución 2
Examen de arrays y funciones, sólo hay un modelo, solución
Prácticas:
Bloque 1 Expresiones, entrada/salida.
Bloque 2. if, if else.
Bloque 2 y medio, switch.
Bloque 3, while, Esquemas autoexplicativos. while_I.cpp, while_II.cpp.
Bloque 5, basándose en la solución al segundo ejercicio del bloque anterior, modificar el programa de modo que:
El usuario/a no pueda introducir un entero que no sea una cifra, repitiéndose la petición del dato hasta que sea correcto. Entregar este programa en un fichero fuente con el nombre do_whileI.cpp.
El usuario/a no pueda introducir un intervalo en el que el extremo izquierdo sea mayor que el derecho, repitiéndose la petición del dato hasta que sea correcto. Entregar este programa en un fichero fuente con el nombre do_whileII.cpp.
Ambas cosas al mismo tiempo. Entregar este programa en un fichero fuente con el nombre do_whileIII.cpp.
NOTA: utilizar un bucle do while para validar la entrada de los datos.
Ejemplo: Este programa pide un número por el teclado mientras sea mayor que un límite.
#include<stdio.h> int main() { int valor, limite=10; do{ printf("\nIntroduce un entero menor que %d: ", limite); scanf("%d",&valor); if (valor>limite) printf("\nNo valido"); }while(valor>limite); printf("\nEl valor introducido es %d", valor); }
Ejemplo de ejecución:
Introduce un entero menor que 10: 23
No valido
Introduce un entero menor que 10: 33
No valido
Introduce un entero menor que 10: 2
El valor introducido es 2
Bloque 6, for.Esquemas autoexplicativos. buclesIII_1.cpp, buclesIII_2.cpp. Ejercicio de referencia: "Mostrar los n primeros números que contienen la cifra x, n y x se piden por el teclado". contienex.cpp
Bloque 7 funciones.. Mostrar los n primeros números primos. guion_nprimos_f.cpp. Mostrar los n primeros números perfectos (buscar en la Wikipedia la definición). guion_nperfectos_f.cpp. Como ejercicio, relacionados con estos y sin guión: mostrar las parejas de números amigos menores de 3000 (dos números son amigos si la suma de los divisores de uno es el otro y recíprocamente). Mostrar los n primeros primos gemelos. Dos primos son gemelos si su diferencia es igual a 2.
NUEVO Bloque 8. Arrays unidimensionales. Ejercicio 1 del examen de Septiembre de 2007. Trata de la sucesión de Fibonacci, ver artículo correspondiente de la Wikipedia.
Usar estos guiones, primero sin funciones, después con funciones.