Pour chaque exercice, l'objectif est de donner l'affichage produit par le programme.

Exercice un

package fr.univ_paris1.mass.poo.cc1.exo1;

import java.util.Scanner;

public class Exo11 {

    public static void main(String[] args) {
	Scanner scan = new Scanner(System.in);
	System.out.println("X = ");
	int x = scan.nextInt();
	System.out.println("Y = ");
	int y = scan.nextInt();
	System.out.println("x y = " + x + y);
	System.out.println("x + y = " + (x + y));
	System.out.println("x % y = " + x % y);
	int k = 0;
	if (x > 2 * y) {
	    k = k + 1;
	}
	if (x > y) {
	    k = k + 1;
	} else {
	    k = k - 2;
	}
	System.out.println(k);
	scan.close();
    }

}

L'utilisateur saisit 4 puis 3, ce qui conduit à l'affichage suivant :

x y = 43
x + y = 7
x % y = 1
1

Il faut bien faire attention au "x y = " + x + y qui est compris par l'ordinateur comme ("x y = " + x) + y ce qui explique le premier affichage.

Exercice deux

package fr.univ_paris1.mass.poo.cc1.exo2;

public class Exo21 {

    public static void main(String[] args) {
	int k = 1;
	int v = 0;
	do {
	    if (k % 2 == 1) {
		v = v + 1;
		System.out.println(k + " [] " + v);
	    }
	    k++;
	} while (k < 5);
	System.out.println(k);
	System.out.println(v);
    }

}

Le programme produit l'affichage suivant :

1 [] 1
3 [] 2
5
2

Exercice trois

package fr.univ_paris1.mass.poo.cc1.exo3;

public class Exo31 {

    public static void main(String[] args) {
	int n = 0;
	int k = 0;
	for (int i = 0; i < 3; i++) {
	    System.out.println("i=" + i);
	    for (int j = i; j < i + 2; j++) {
		System.out.println("j=" + j);
		n++;
		if (j % 2 == 1) {
		    k++;
		} else {
		    k--;
		}
	    }
	    if (i % 2 == 1) {
		System.out.println("k=" + k);
	    }
	}
	System.out.println("n=" + n);
	System.out.println("k=" + k);
    }

}

Le programme produit l'affichage suivant :

i=0
j=0
j=1
i=1
j=1
j=2
k=0
i=2
j=2
j=3
n=6
k=0

Exercice quatre

package fr.univ_paris1.mass.poo.cc1.exo4;

import java.util.Arrays;

public class Exo41 {
    public static void main(String[] args) {
	double[] z = { 1.5, 2.5, 0 };
	System.out.println(z.length);
	int l = 0;
	for (double u : z) {
	    System.out.println(l + " -> " + u);
	    l++;
	}
	System.out.println(l);
	System.out.println(z);
	int[] x = new int[3];
	System.out.println(x.length);
	for (int i = 0; i < x.length; i++) {
	    System.out.println(x[i]);
	    x[i] = 1 + (i % 2);
	}
	System.out.println(Arrays.toString(x));
	int w = 0;
	for (int q : x) {
	    w = w + q;
	}
	System.out.println(w);
    }
}

Le programme produit l'affichage suivant :

3
0 -> 1.5
1 -> 2.5
2 -> 0.0
3
[D@3ade1b36
3
0
0
0
[1, 2, 1]
4