Menu
Coddy logo textTech

Valeurs de retour

Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 48 sur 78.

Jusqu'à présent, nos fonctions ont affiché la sortie directement. Mais souvent, vous voulez qu'une fonction calcule une valeur et la renvoie afin que vous puissiez l'utiliser ailleurs dans votre code. C'est là que les valeurs de retour interviennent.

Utilisez la fonction return() pour renvoyer une valeur depuis votre fonction :

add <- function(a, b) {
  return(a + b)
}

result <- add(5, 3)
print(result)

Sortie :

[1] 8

Au lieu d'afficher à l'intérieur de la fonction, nous retournons la somme. La valeur retournée peut ensuite être stockée dans une variable, utilisée dans des calculs ou passée à d'autres fonctions.

Cela rend les fonctions beaucoup plus polyvalentes :

double <- function(x) {
  return(x * 2)
}

print(double(5) + double(3))

Sortie :

[1] 16

En R, si vous n'utilisez pas return(), la fonction retourne automatiquement la dernière expression évaluée. Cependant, utiliser return() explicitement rend votre code plus clair et est particulièrement utile lorsque vous souhaitez quitter une fonction prématurément.

challenge icon

Défi

Facile

Créez une fonction appelée calculate_power qui prend deux arguments : base et exponent. La fonction doit retourner le résultat de l'élévation de la base à la puissance de l'exposant (en utilisant l'opérateur ^).

Lisez deux nombres à partir de l'entrée, convertissez-les en valeurs numériques et appelez votre fonction. Stockez la valeur retournée dans une variable appelée result, puis affichez result.

Par exemple, si les entrées sont 2 et 3, la sortie devrait être :

[1] 8

Si les entrées sont 5 et 2, la sortie devrait être :

[1] 25

Aide-mémoire

Les fonctions peuvent renvoyer des valeurs à l'aide de la fonction return(). Cela vous permet de stocker le résultat dans une variable ou de l'utiliser dans d'autres opérations :

add <- function(a, b) {
  return(a + b)
}

result <- add(5, 3)
print(result)  # [1] 8

Les valeurs renvoyées peuvent être utilisées directement dans des expressions :

double <- function(x) {
  return(x * 2)
}

print(double(5) + double(3))  # [1] 16

En R, les fonctions renvoient automatiquement la dernière expression évaluée si return() n'est pas utilisé. Cependant, l'utilisation explicite de return() rend le code plus clair et permet des sorties anticipées des fonctions.

Essayez vous-même

# Lire l'entrée
con <- file("stdin", "r")
base <- as.numeric(suppressWarnings(readLines(con, n = 1)))
exponent <- as.numeric(suppressWarnings(readLines(con, n = 1)))

# TODO: Créer une fonction appelée calculate_power qui prend base et exponent
# et retourne base élevée à la puissance de exponent en utilisant l'opérateur ^


# TODO: Appeler votre fonction avec les valeurs d'entrée et stocker le résultat dans 'result'


# Afficher le résultat
print(result)
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux