TP1 - Rappel + Récursivité

Rappel

Durée : 1h30

Inès de Courchelle, Elisabeth Ranisavljevic, Romain Dujol

Objectifs :

  • Faire un point sur toutes les notions vues l’année dernière
  • Réaliser des rappel autour de la récursivité
  • Partir sur de bonnes bases

Attention :

À chaque étape de programmation, vous devez vérifier si le programme :

  • Compile sans warning
  • Obtient les résultats attendus
  • Avant de coder, il faut écrire un algo avec un papier et un stylo !

    logo

Avant de commencer

  1. Créer l’arborescence suivante :
  2. N’oublier pas à chaque TD de rajouter un dossier.
  3. Je ne sais plus compiler ?
cd .. # Pour revenir au répertoire précédent dans l'arborescence
cd nomduRepertoire # pour aller dans un répertoire présent où je me trouve
cd /home/monLogin/Documents # pour aller dans un répertoire
                            # en indiquant le chemin complet
ls # pour afficher le contenu du repertoire où je me trouve
Compilation
gcc -Wall monProgramme.c -o exe
Exécution
./exe

Exercice 1 : La puissance récursive

  1. Créer un fichier appelé exercice1.c

ATTENTION enregistrer le fichier dans le bon dossier.

  1. Écrire le programme suivant :
#include <stdio.h>
#include <stdlib.h>

int main(){
    int a;
    printf("Bonjour, je suis le programme principal \n");
    printf("Veuillez entrer un chiffre \n");
    scanf("%d", &a);
    printf("vous avez écrit %d \n", a);
    return 0;
}
  1. Vérifier que le programme compile et s’éxécute normalement.

  2. Écrire la fonction puissanceNonTerminale réalisée en TD.

  3. Appeler la fonction puissanceNonTerminale dans le programme principal.

  4. Écrire la fonction puissanceTerminale réalisée en TD.

Exercice 2 : Le PGCD

  1. Créer un fichier appelé exercice2.c

ATTENTION enregistrer le fichier dans le bon dossier.

  1. Écrire l’algorithme de la fonction ou procédure qui calcule le PGCD.

  2. Écrire un programme qui demande à l’utilisateur de saisir deux nombres et qui affiche leur PGCD.

Exercice 3 : La somme des chiffres

  1. Créer un fichier appelé exercice3.c

ATTENTION enregistrer le fichier dans le bon dossier.

  1. Écrire une fonction récursive qui retourne la somme des chiffres d’un nombre composé de n chiffres.

  2. Écrire le programme principal qui teste la fonction précédement créée.

Exercice 4 : Le menu

  1. Créer un fichier appelé main.c

ATTENTION enregistrer le fichier dans le bon dossier.

  1. Créer l’arborescence suivante :

  2. Dans le fichier mesFonctions.h, ajouter toutes les signatures des exercices précédents.

  3. Dans le fichier mesFonctions.c, écrire le code de toutes les fonctions précédements créées.

  4. Dans le fichier main.c, réaliser le programme principal. Il permettra à l’utilisateur, à travers un menu, d’appeler les différentes fonctionnalités précédements créées.

Comment compiler plusieurs fichiers ?
  1. Compiler fonction.c
gcc -c mesFonctions.c -o mesFonctions.o -Wall
  1. Compiler main.c
gcc -c main.c -o main.o -Wall
  1. Compiler le tout !
gcc mesFonctions.o main.o -o exe