# Programmer en R/Programmer une boucle

* Introduction
** Faire ses premiers pas
** Installer R
** Choisir son environnement de travail
** Installer des librairies
** Se documenter
* Manipulation et mise en forme des données
** Manipuler les nombres
** Manipuler les vecteurs
** Manipuler les chaînes de caractères
** Manipuler les facteurs
** Manipuler les dates et les heures
** Manipuler un tableau de données
** Manipuler une liste
* Importation et exportation des données
** Importer un fichier CSV
** Résoudre les problèmes d'encodage des caractères
** Importer un fichier TSV
** Importer un fichier texte à largeur fixe
** Importer des données depuis un tableur
** Import un fichier JSON
** Extraire des données d'une page web
* Visualisation de données
** Comprendre la grammaire des graphiques
** Représenter une carte
** Visualiser une carte choroplèthe
* Modélisation statistique
** Estimer un modèle de régression linéaire
** Estimer un modèle de régression circulaire
* Communication
* Programmation avancée
** Programmer une boucle
** Programmer une fonction
* Outils mathématiques
** Optimiser une fonction
** Manipuler les matrices
** Les fonctions statistiques de base
** Les loi de probabilités, ajustement et test
* Introduction
** Faire ses premiers pas
** Installer R
** Choisir son environnement de travail
** Installer des librairies
** Se documenter
* Manipulation et mise en forme des données
** Manipuler les nombres
** Manipuler les vecteurs
** Manipuler les chaînes de caractères
** Manipuler les facteurs
** Manipuler les dates et les heures
** Manipuler un tableau de données
** Manipuler une liste
* Importation et exportation des données
** Importer un fichier CSV
** Résoudre les problèmes d'encodage des caractères
** Importer un fichier TSV
** Importer un fichier texte à largeur fixe
** Importer des données depuis un tableur
** Import un fichier JSON
** Extraire des données d'une page web
* Visualisation de données
** Comprendre la grammaire des graphiques
** Représenter une carte
** Visualiser une carte choroplèthe
* Modélisation statistique
** Estimer un modèle de régression linéaire
** Estimer un modèle de régression circulaire
* Communication
* Programmation avancée
** Programmer une boucle
** Programmer une fonction
* Outils mathématiques
** Optimiser une fonction
** Manipuler les matrices
** Les fonctions statistiques de base
** Les loi de probabilités, ajustement et test
[ Modifier le sommaire ]

### Boucle itérative

La structure générale d'une boucle itérative est :
où variable est un nom de variable, et vecteur est un vecteur contenant les valeurs successive que va prendre la variable. Par exemple, pour calculer 10! (factorielle dix) « à la main » :
On pourra comparer cette valeur avec celle de Γ(11) = 10! : gamma(11).

### Boucle anté- ou postconditionée

Le logiciel R dispose de deux instructions : repeat et while.
La structure
répète le bloc. La structure ne possède pas en elle-même de condition d'arrêt ; celle-ci doit être incluse dans le bloc considéré, la sortie de la boucle se faisant par la commande break. Par exemple, le code ci-dessous calcule 10!, la variable i étant décrémentée :
La structure while a pour syntaxe :
où l'évaluation de instruction1 est un booléen, et instruction2 est exécutée si cette évaluation renvoie « vrai ». Le calcul de la factorielle devient

### Pilotage des boucles

Il existe deux instruction permettant de piloter les boucles :
* l'instruction break, comme nous l'avons déjà vu, permet d'interrompre une boucle ; l'interpréteur exécute ensuite l'instruction qui suit la boucle ;
* l'instruction next force le passage à l'itération suivantes : l'interpréteur exécute la première instruction de la boucle.