Vidéo: Comment utiliser les conditions if,else... en programmation ? 2025
Lorsque vous utilisez R, vous avez parfois besoin de votre fonction pour faire quelque chose si une condition est vraie et autre chose si elle est Vous pouvez le faire avec deux instructions if, mais il y a un moyen plus simple dans R: une instruction if … else Une instruction if … else contient les mêmes éléments qu'une instruction if (voir la section précédente), et quelques extra:
-
Le mot-clé else, placé après le premier bloc de code
-
Un second bloc de code, contenu entre accolades, qui doit être effectué si et seulement si le résultat de la condition dans la déclaration if () est FAUX
Dans certains pays, le montant de la taxe sur la valeur ajoutée (TVA) à payer dépend du fait que le client est une organisation publique ou privée. Seuls 6% de TVA et les organisations privées doivent payer 12% de TVA Vous pouvez ajouter un argument supplémentaire public à la fonction priceCalculator () et l'adopter comme suit pour ajouter le montant exact de la TVA:
si (heures> 100) net. prix <- net. prix * 0. 9 if (public) {tot. prix <- net. prix * 1. 06} else {tot. prix <- net. price * 1. 12} round (prix total)}
Si vous envoyez ce code à la console, vous pouvez tester la fonction. Par exemple, si vous avez travaillé pendant 25 heures, le code suivant vous donne les différents montants que vous facturez pour les organisations publiques et privées, respectivement: >> priceCalculator (25, public = TRUE) [1] 1060> priceCalculator (25, public = FAUX) [1] 1120
Cela fonctionne bien, mais comment ça marche?
L'instruction if a besoin d'une valeur logique entre les parenthèses. Toute expression que vous mettez entre les parenthèses est évaluée avant d'être transmise à l'instruction if. Donc, si vous travaillez directement avec une valeur logique, vous n'avez pas du tout à spécifier une expression. En utilisant, par exemple, si (public == TRUE) est redondant.
si (public) tot. prix <- net. prix * 1. 06 autre tot. prix <- net. price * 1. 12
Mettre l'instruction else à la fin d'une ligne et non le début de la suivante est une bonne idée.
dans une fonction et que vous obtenez le fichier complet immédiatement à R. Mais vous pouvez raccourcir le fichier. L'instruction if fonctionne comme une fonction et, par conséquent, elle renvoie également une valeur. Par conséquent, vous pouvez affecter cette valeur à un objet ou l'utiliser dans les calculs. Donc, au lieu de recalculer net. prix et l'attribution du résultat à tot. prix dans les blocs de code, vous pouvez utiliser l'instruction if … else comme ceci:
R évaluera d'abord l'instruction if … else, et multiplier le résultat par net. prix. Le résultat de ceci est alors assigné à tot. prix. Cela ne diffère pas d'un iota du résultat des cinq lignes de code que nous avons utilisées pour l'instruction originale if … else.
