Problème de compréhension sur cette opération
stefland
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
stefland Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
stefland Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Auriez-vous l'amabilité de m'expliquer ce minuscule bout de code que je n'arrive malheureusement pas à comprendre :
function hi (a, b) {
return a * b;
}
function hello (a, b) {
return hi(a, b + 1);
}
hello(2, 2);
5 --> 6
Comme vous pouvez le constater, ma logique me conduit à répondre 5, mais en réalité c'est 6.
J'aimerais juste comprendre pourquoi.
Merci à vous.
Auriez-vous l'amabilité de m'expliquer ce minuscule bout de code que je n'arrive malheureusement pas à comprendre :
function hi (a, b) {
return a * b;
}
function hello (a, b) {
return hi(a, b + 1);
}
hello(2, 2);
5 --> 6
Comme vous pouvez le constater, ma logique me conduit à répondre 5, mais en réalité c'est 6.
J'aimerais juste comprendre pourquoi.
Merci à vous.
A voir également:
- Problème de compréhension sur cette opération
- Opérateur de réseau mobile - Guide
- Impossible de terminer l'opération car le fichier contient un virus - Forum Python
- Impossible d'installer le logiciel utorrent ✓ - Forum Virus
- Erreur lors d'une opération de pagination ✓ - Forum Matériel & Système
- L'opération demandée nécessite une élévation ✓ - Forum LibreOffice / OpenOffice
1 réponse
Salut stefland,
Comme la question est si gentiment posée, je me permets donc de te répondre le plus clairement possible.
Tout simplement :
- le return hi(a, b +1); dans ta fonction hello récupère le résultat de la fonction hi
- hi = a x b donc 2 x 2 = 4
- Donc ta logique ta dit de faire 2 x 2 = 4 + 1 = 5
- c'est false
- regarde
- dans ta fonction hello, hi(a, b+1), on ajoute 1 à b, donc hello = hello(2,3)
- donc si hello(2,3); alors return hi (2x3)
- 6 et non 5
- j'espère que tu comprends maintenant mon cher stefland
Comme la question est si gentiment posée, je me permets donc de te répondre le plus clairement possible.
Tout simplement :
- le return hi(a, b +1); dans ta fonction hello récupère le résultat de la fonction hi
- hi = a x b donc 2 x 2 = 4
- Donc ta logique ta dit de faire 2 x 2 = 4 + 1 = 5
- c'est false
- regarde
- dans ta fonction hello, hi(a, b+1), on ajoute 1 à b, donc hello = hello(2,3)
- donc si hello(2,3); alors return hi (2x3)
- 6 et non 5
- j'espère que tu comprends maintenant mon cher stefland
J’ai un pote qui s'appelle Ben qui m’a refilé l'astuce aussi.
En tt cas gg.