# Programmation C++/Les fonctions/Exercices

* Avant-propos
* Introduction
* Compilation
* Un premier programme
* Les commentaires
* Le préprocesseur
* Les types de base et les déclarations
** Exercices
* Les opérations de base
* Les entrées-sorties
* Les pointeurs
** Exercices
* Les références
* Les tableaux
** Exercices
** Exercices sur les tableaux statiques
** Exercice : Tris des tableaux à une dimension
** Solution : Tris des tableaux à une dimension
* Les structures de contrôle
** Exercices
** Exercices if...else et switch
* Les fonctions
** Exercices
* Les structures
** Exercices
* Les classes
** Exercices
** Exercices de développement
* Les espaces de noms
* Les exceptions
* Les templates
** Exercices
* Conventions d'appel
* Les fichiers
* La librairie standard
* Expressions rationnelles
* Interfaces graphiques
* Bibliographie et liens

## Anciennes pages

* Opérateurs
* Héritage
* Polymorphisme
* Avant-propos
* Introduction
* Compilation
* Un premier programme
* Les commentaires
* Le préprocesseur
* Les types de base et les déclarations
** Exercices
* Les opérations de base
* Les entrées-sorties
* Les pointeurs
** Exercices
* Les références
* Les tableaux
** Exercices
** Exercices sur les tableaux statiques
** Exercice : Tris des tableaux à une dimension
** Solution : Tris des tableaux à une dimension
* Les structures de contrôle
** Exercices
** Exercices if...else et switch
* Les fonctions
** Exercices
* Les structures
** Exercices
* Les classes
** Exercices
** Exercices de développement
* Les espaces de noms
* Les exceptions
* Les templates
** Exercices
* Conventions d'appel
* Les fichiers
* La librairie standard
* Expressions rationnelles
* Interfaces graphiques
* Bibliographie et liens

## Anciennes pages

* Opérateurs
* Héritage
* Polymorphisme
[ Modifier le sommaire ]

## Exercices sur les fonctions
### EXERCICE 1

Écrire une fonction distance ayant comme paramètres 4 doubles xa,ya et xb,yb qui représentent les coordonnées de deux points A et B et qui renvoie la distance AB. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Création de fonction simple.
* Passage de paramètres par valeur.
* Utilisation de return.
* Appel d'une fonction.
* Voici le fichier source :

### EXERCICE 2

Écrire une fonction f ayant comme paramètres un double x et un booléen ok et qui renvoie un double par un return. La fonction renvoie par un return la racine carrée de (x-1)*(2-x). La fonction renvoie par l'intermédiaire de la variable ok la valeur true si la fonction est définie au point x, false sinon. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Création de fonction simple.
* Passage de paramètres par valeur et par référence.
* Utilisation de return.
* Paramètres en entrées et en sorties d'une fonction.
* Appel d'une fonction.
* Jeu de tests d'une fonction.
Voici le fichier source :

### EXERCICE 3

Écrire une fonction f ayant en paramètre un entier et qui renvoie par un return un booléen : true si l'entier est premier et false sinon. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Création de fonction simple.
* Appel d'une fonction.
* Validation des données avant l'appel d'une fonction.
* Fonction renvoyant un booléen.
* Voici le fichier source :

### EXERCICE 4

Écrire une fonction f ayant comme paramètre un entier n et qui renvoie le n-ième nombre premier : cette fonction utilisera la fonction du 3). Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Création de fonctions simples.
* Appel de fonction.
* Fonction qui appelle une autre fonction.
* Voici le fichier source :

### EXERCICE 5

Écrire une fonction swap ayant en paramètres 2 entiers a et b et qui échange les contenus de a et de b. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Création de fonction simple.
* Appel d'une fonction.
* Passage de paramètres par références.
* Voici le fichier source :

### EXERCICE 6

Écrire une fonction f ayant en paramètres un tableau t de taille quelconque et un entier n indiquant la taille du tableau. f doit renvoyer par un return un booleén b indiquant s'il existe une valeur comprise entre 0 et 10 dans les n premières cases du tableau t. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Ecriture d'une fonction ayant comme paramètre un tableau de taille quelconque.
* Recherche d'un élément dans un tableau vérifiant une propriété.
* Utilisation de return.
* Voici le fichier source :

### EXERCICE 7

Écrire une fonction f ayant en paramètres un tableau t de taille quelconque et un entier n indiquant la taille du tableau. f doit renvoyer par un return le nombre de valeurs comprises entre 0 et 10 dans les n premières cases du tableau t. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Écriture d'une fonction ayant comme paramètre un tableau de taille quelconque.
* Compter le nombre d'éléments dans un tableau vérifiant une propriété.
* Utilisation de return.
* Voici le fichier source :

### EXERCICE 8

Écrire une fonction f ayant en paramètres un tableau t de taille quelconque et un entier n indiquant la taille du tableau. f possède un autre paramètre v , entier passé par référence. f doit renvoyer par un return un booleén b indiquant s'il existe une valeur comprise entre 0 et 10 dans les n premières cases du tableau t. Si f renvoie true, v est égal à la valeur de la première case du tableau comprise entre 0 et 10. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Écriture d'une fonction ayant comme paramètre un tableau de taille quelconque.
* Recherche d'un élément dans un tableau.
* Utilisation de return.
* Voici le fichier source :

### EXERCICE 9

Écrire une fonction f ayant en paramètres un tableau t1 de taille quelconque et un entier n indiquant la taille du tableau, ainsi qu'un tableau t2 de la même taille que t1. f doit renvoyer par un return un entier nb indiquant le nombre de valeurs comprises entre 0 et 10 dans le tableau t1. f doit mettre dans le tableau t2 les différentes valeurs comprise entre 0 et 10 qu'il a rencontrées dans le tableau t1.
Cet exercice a pour but de vérifier les points techniques suivants :
* Écriture d'une fonction ayant comme paramètre un tableau de taille quelconque.
* Extraction d'un sous-liste d'éléments.
* Utilisation de return.
* Voici le fichier source :

### EXERCICE 10

Écrire une fonction f ayant en paramètres un tableau t de taille quelconque et un entier n indiquant la taille du tableau. f doit renvoyer par un return un entier égal à l'indice de la première case du tableau (parmi les n premières) comprise entre 0 et 10. S'il n'existe pas de telle valeur, la fonction renvoie -1. Tester cette fonction.
Cet exercice a pour but de vérifier les points techniques suivants :
* Écriture d'une fonction ayant comme paramètre un tableau de taille quelconque.
* Utilisation de return.
* Recherche d'un élément dans un tableau.
* Voici le fichier source :