exercices sur les structures de données de base
This commit is contained in:
parent
24cd7ca9c3
commit
c8ab39a19e
|
@ -11,8 +11,12 @@ FIXME
|
||||||
- Recherche dans une liste, recherche du maximum dans une liste
|
- Recherche dans une liste, recherche du maximum dans une liste
|
||||||
- Recherche d’un mot dans une chaîne de caractères.
|
- Recherche d’un mot dans une chaîne de caractères.
|
||||||
|
|
||||||
Liste
|
Les listes
|
||||||
------
|
-----------
|
||||||
|
|
||||||
|
Un ensemble de valeurs portant le même nom de variable et repérées par un nombre, s’appelle un tableau, ou encore une liste, ou une variable indicée.
|
||||||
|
Le nombre qui, au sein d’un tableau, sert à repérer chaque valeur s’appelle l’indice.
|
||||||
|
Chaque fois que l’on doit désigner un élément du tableau, on fait figurer le nom du tableau, suivi de l’indice de l’élément.
|
||||||
|
|
||||||
.. code-block:: python
|
.. code-block:: python
|
||||||
|
|
||||||
|
|
|
@ -302,6 +302,46 @@ un résultat est l'application d’une fonction à une structure de données eff
|
||||||
\end{algorithmic}
|
\end{algorithmic}
|
||||||
\end{algorithm}
|
\end{algorithm}
|
||||||
|
|
||||||
|
.. ifconfig:: exercice
|
||||||
|
|
||||||
|
**Exercice** : factoriser le code suivant
|
||||||
|
::
|
||||||
|
|
||||||
|
Ecrire "Etes-vous marié ?"
|
||||||
|
Rep1 <- ""
|
||||||
|
TantQue Rep1 <> "Oui" et Rep1 <> "Non"
|
||||||
|
Ecrire "Tapez Oui ou Non"
|
||||||
|
Lire Rep1
|
||||||
|
FinTantQue
|
||||||
|
...
|
||||||
|
Ecrire "Avez-vous des enfants ?"
|
||||||
|
Rep2 <- ""
|
||||||
|
TantQue Rep2 <> "Oui" et Rep2 <> "Non"
|
||||||
|
Ecrire "Tapez Oui ou Non"
|
||||||
|
Lire Rep2
|
||||||
|
FinTantQue
|
||||||
|
|
||||||
|
.. ifconfig:: correction
|
||||||
|
|
||||||
|
**Correction** :
|
||||||
|
|
||||||
|
::
|
||||||
|
Fonction RepOuiNon() en caractère
|
||||||
|
Truc <- ""
|
||||||
|
TantQue Truc <> "Oui" et Truc <> "Non"
|
||||||
|
Ecrire "Tapez Oui ou Non"
|
||||||
|
Lire Truc
|
||||||
|
FinTantQue
|
||||||
|
Renvoyer Truc
|
||||||
|
Fin
|
||||||
|
|
||||||
|
Ecrire "Etes-vous marié ?"
|
||||||
|
Rep1 <- RepOuiNon()
|
||||||
|
...
|
||||||
|
Ecrire "Avez-vous des enfants ?"
|
||||||
|
Rep2 <- RepOuiNon()
|
||||||
|
|
||||||
|
|
||||||
Définition mathématique
|
Définition mathématique
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -315,6 +355,28 @@ fonction
|
||||||
- F est appelé codomaine
|
- F est appelé codomaine
|
||||||
- la **signature** de la fonction : `E → F (int -> int = <fun>)`
|
- la **signature** de la fonction : `E → F (int -> int = <fun>)`
|
||||||
|
|
||||||
|
|
||||||
|
Exemple de signature d'une fonction
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
Fonction RepOuiNon(Msg en Caractère) en Caractère
|
||||||
|
Ecrire Msg
|
||||||
|
Truc <- ""
|
||||||
|
TantQue Truc <> "Oui" et Truc <> "Non"
|
||||||
|
Ecrire "Tapez Oui ou Non"
|
||||||
|
Lire Truc
|
||||||
|
FinTantQue
|
||||||
|
Renvoyer Truc
|
||||||
|
Fin Fonction
|
||||||
|
|
||||||
|
...
|
||||||
|
Rep1 <- RepOuiNon("Etes-vous marié ?")
|
||||||
|
...
|
||||||
|
Rep2 <- RepOuiNon("Avez-vous des enfants ?")
|
||||||
|
...
|
||||||
|
|
||||||
|
|
||||||
curryfication
|
curryfication
|
||||||
|
|
||||||
évaluation de l'application d'une fonction
|
évaluation de l'application d'une fonction
|
||||||
|
|
Loading…
Reference in New Issue