Execution d'un programme

Grosprobleme1 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
Grosprobleme1 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -
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 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
"je ne comprend pas tout"
Commence par ce que tu comprends déjà...
0
Grosprobleme1 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai compris pour f prend la valeur 12 et g la valeur 24 mais le reste j'ai besoin d'explication.
0