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:


    1. 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.

    2. 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.

    3. 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

      1. Escribir una función que calcule la suma de los divisores de un número, incluyendo el 1 pero no el propio número.

      2. Escribir una función que devuelva 1 si el parámetro es un número perfecto, 0 en caso contrario.

      3. 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.