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é directement le résultat. Mais souvent, tu veux qu’une fonction calcule une valeur et te la renvoie pour que tu puisses l’utiliser ailleurs dans ton code. C’est là qu’interviennent les valeurs de retour.
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] 8Au lieu d’afficher le résultat dans la fonction, nous renvoyons la somme. La valeur renvoyée peut ensuite être stockée dans une variable, utilisée dans des calculs ou transmise à d’autres fonctions.
Cela rend les fonctions beaucoup plus polyvalentes :
double <- function(x) {
return(x * 2)
}
print(double(5) + double(3))Résultat :
[1] 16En R, si tu n’utilises pas return(), la fonction renvoie automatiquement la dernière expression évaluée. Cependant, utiliser explicitement return() rend ton code plus clair et est particulièrement utile lorsque tu veux quitter une fonction prématurément.
Défi
FacileCrée une fonction appelée calculate_power qui prend deux arguments : base et exponent. La fonction doit renvoyer le résultat de l’élévation de la base à la puissance de l’exposant (en utilisant l’opérateur ^).
Lis deux nombres en entrée, convertis-les en valeurs numériques et appelle ta fonction. Stocke la valeur renvoyée dans une variable appelée result, puis affiche result.
Par exemple, si les entrées sont 2 et 3, la sortie doit être :
[1] 8Si les entrées sont 5 et 2, la sortie doit être :
[1] 25Essayez 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 renvoie base élevé à la puissance exponent à l’aide de 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)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
4Opérateurs - Partie 2
Opérateurs logiques (AND, OR)Opérateurs logiques - Partie 2 (NOT)Récapitulatif - Logique simpleLogique vectorisée - Partie 1Logique vectorisée - Partie 27Calculateur de partage d'addition
Message de bienvenueRécupérer la saisie utilisateur10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz2Variables et types de données
Type de données numériqueType de données entierType de données caractèreType de données logiqueVérification des types de donnéesConventions de nommageValeurs manquantes : NARécapitulatif - Création de variables8Boucles
Boucle ForBoucle WhileBreakSuivant (Continue)Récapitulatif - FactorielleGénération de séquences (seq, :)Boucles imbriquéesRécapitulatif - Saisie dynamique3Opérateurs, partie 1
Opérateurs arithmétiquesDivision entière et moduloOpérateurs d'affectationRécapitulatif - Mathématiques simplesOpérateurs de comparaison6Entrées/Sorties de base
Affichage avec PrintCat pour l'affichageAffichage avec des variablesLire l'entrée avec readline()Bases de la conversion de typesRécapitulatif - Calculateur d'âgeRécapitulatif - Vrai ou Faux9Fonctions
Déclarer une fonctionArguments de fonctionValeurs de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs de paramètres par défautEntraînez-vous par vous-même : Compilateur R en ligne