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.
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. Escribir un programa que muestre los n primeros primos, utilizando una función que devuelva 1 si el número que se pasa como parámetro es primo, cero en caso contrario. Utilizar el guión que se suministra.
Bloque 7.5, más funciones. Escribir un programa que muestre los n primeros números perfectos. Un número es perfecto si es igual a la suma de sus divisores (incluyendo el 1 pero no el propio número).
Escribir una función que calcule la suma de los divisores de un número, incluyendo el 1 pero no el propio número.
Escribir una función que devuelva 1 si el parámetro es un número perfecto, 0 en caso contrario.
Usando las dos funciones anteriores, escribir el programa pedido.
NOTA: por cuestiones de rango, no probar el programa con n mayor que 4, ver artículo de la wikipedia.
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.