

**Exemple 1 :**

Nous allons ici détailler cette fonction  :

```{r, func-full, ref.label=c('func-def', 'func-body', 'func-end'), eval=TRUE}
```

Le calcul  fait est simplement  `return` : {x + 1}.

```{r, func-result, eval=TRUE, echo=FALSE}
result <- add_one(1)
```

Donc pour la  valeur **3** le résultat renvoyé est  : `{r} result`

Si on veut rentrer plus dans le détail, ici nous avons l'entête de la fonction : 

```{r, func-def, eval=FALSE}
add_one = function(x) {
```

Le calcul dont on a parlé au début,
```{r, func-body, eval = FALSE}
  return(x + 1)
```

Et surtout on oublie pas de fermer la parenthèse ! 

```{r, func-end, eval=FALSE}
}
```

:::{.callout-note collapse=true}

Les chunks sont écrit ainsi dans le fichier Qmd : 

````markdown
```{{r func-full, ref.label=c('func-def', 'func-body', 'func-end'), eval=TRUE}}
```

```{{r, func-result, eval=TRUE, echo=FALSE}}
result <- add_one(1)
```

```{{r, func-def, eval=FALSE}}
add_one = function(x) {
```

```{{r, func-body, eval = FALSE}}
  return(x + 1)
```

```{{r, func-end, eval=FALSE}}
}
```
````
:::

