Execution d'un programme

Fermé
Grosprobleme1 Messages postés 4 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 28 octobre 2013 - 25 oct. 2013 à 19:23
Grosprobleme1 Messages postés 4 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 28 octobre 2013 - 25 oct. 2013 à 19:33
Bonjour,

Je suis étudiant en informatique et nous apprenons le langage Java. Je suis en train de faire quelques exercices et à vrai dire je ne comprend pas tout. Si vous pouvez m'aider ça serait chouette :) .

Exercice 1 :

Expliquer ce que produit l'execution du programme :

class Kezako{

static int f(int i){

System.out.println("f prends " +i);

return i+g(i*2);

}

static int g(int j){

System.out.println("g prend "+ j);

return j-i;
}

public static void main(String[] args){

int a=f(12)

System.out.println("resultat " +a);

a=f(g(f(3)));

System.out.println("resultat " +a)


La correction de cette exercice donne :

f prend 12
g prend 24
resultat 35
f prend 3
f prend 6
g prend 8
f prend 7
g prend 14
resultat 20

Si quelqu'un peut m'expliquer en détail comment on trouve ces valeurs, s'il vous plaît?

Merci de m'avoir lu.

2 réponses

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
25 oct. 2013 à 19:27
"je ne comprend pas tout"
Commence par ce que tu comprends déjà...
0
Grosprobleme1 Messages postés 4 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 28 octobre 2013
25 oct. 2013 à 19:33
j'ai compris pour f prend la valeur 12 et g la valeur 24 mais le reste j'ai besoin d'explication.
0