# Functions (Fonctions)

## Vue d'ensemble

* [Créer une fonction](#create-a-function)
* [Créer une fonction avec une sortie](#create-a-function-with-an-output)
  * [Créer une fonction conditionnelle](#conditional-outputs)

## Créer une fonction <a href="#create-a-function" id="create-a-function"></a>

![](https://gblobscdn.gitbook.com/assets%2F-LAn5scXl2uqUJUOqkJo%2F-LAn5wecEraNWaG7Ig2g%2F-LAn66y6xaGnS4Hk6xQY%2Fblocks-function-%E2%9C%95-fig-1.png?alt=media)

Pour créer une fonction, vous devez préciser si elle a des entrées et lui donner un nom.

![](https://gblobscdn.gitbook.com/assets%2F-LAn5scXl2uqUJUOqkJo%2F-LAn5wecEraNWaG7Ig2g%2F-LAn66yofZprsTAIvpdb%2Fblocks-function-%E2%9C%95-fig-5.png?alt=media)

Un exemple de fonction est présenté ci-dessous. Cette fonction va créer et mélanger une liste d'éléments.

![](https://549775582-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQb_PhIRrBnThcbXLKN%2F-M_tXMq-eLF_lwkXDcB8%2F-M_tXcSAXaSBeTDQJEab%2F1.png?alt=media\&token=88651317-0ddd-48df-be6e-7d7f9e55f8c5)

Après avoir créé votre fonction, vous pouvez simplement l'utiliser à tout moment en utilisant le bloc fonction que vous avez nommé

![](https://549775582-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQb_PhIRrBnThcbXLKN%2F-M_tXMq-eLF_lwkXDcB8%2F-M_tXg5lqc1evk6zV4Wr%2F2.png?alt=media\&token=0897a691-cc39-4bca-9484-40308acf2863)

## Créer une fonction avec une sortie <a href="#create-a-function-with-an-output" id="create-a-function-with-an-output"></a>

Vous pouvez également créer une fonction qui renvoie une sortie spécifique.

![](https://gblobscdn.gitbook.com/assets%2F-LAn5scXl2uqUJUOqkJo%2F-MBmyLkaLb0XFn8rjwoA%2F-MBnDFgRiSp4Hg9osvFn%2Fdoandreturn.png?alt=media\&token=38280a10-4084-4f09-a6db-5d7bd3b958ea)

### Sortie Conditionnelle <a href="#conditional-outputs" id="conditional-outputs"></a>

Vous pouvez ajouter de multiple blocs `return` à votre fonction. Cela vous permet de renvoyer une sortie différente en fonction de certaines conditions.

Par exemple, cette fonction prend une note sur 100 et renvoie une description de la qualité de l'article évalué :

![](https://gblobscdn.gitbook.com/assets%2F-LAn5scXl2uqUJUOqkJo%2F-MBmyLkaLb0XFn8rjwoA%2F-MBnEGfugDVrF6z8coeU%2Fqualfunc.png?alt=media\&token=482b86ca-78c9-4a64-b25e-c9c619e7d6f1)

La fonction s'arrête lorsque le bloc `return` est déclenché. Par exemple, dans l'exemple ci-dessus, si la note de qualité est de 100, la fonction renverra **Perfect** et s'arrêtera. Elle n'exécutera pas les autres tests, et ne retournera pas **Excellent**, **Good**, **Fine**, etc.
