TD Poo#3

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 4

TP # 1 : POO : Java

Supposons dans les exercices (1, 2, 3, 4) que le tableau est initialisé comme ceci :

int[] tab = {12, 15, 13, 10, 8, 9, 13, 14};

Exercice 1 :
Ecrire un programme qui saisit un entier au clavier et qui recherche si cet entier appartient
au tableau (réponse de type oui/non).

Exercice 2 :
Ecrire un programme qui saisit un entier au clavier et qui recherche si cet entier appartient
au tableau. Au cas où la réponse est positive, l’indice de cet entier dans le tableau est affiché. S’il y
a plusieurs occurrences, le dernier indice est affiché.

Exercice 3 :
Ecrire un programme qui saisit un entier et un indice et met cet entier dans le tableau à cet
indice. Il faudra vérifier que l’indice correspond bien à une case du tableau (par exemple 0 ou 3 sont
corrects, mais -1 ou 123 ne sont pas des indices corrects pour ce tableau). Le programme affichera
le contenu du tableau avant et après cette transformation.

Exercice 4 :
Ecrire un programme qui saisit deux indices et échange les valeurs contenues dans le tableau
à ces deux indices. Le programme affichera le contenu du tableau avant et après cette
transformation.

Exercice 5 :
Ecrire un programme qui saisit 6 entiers et les stocke dans un tableau, puis affiche le
contenu de ce tableau une fois qu’il est rempli.

Exercice 6 :
Reprendre la partie saisie du programme précédent (exercice 5) pour écrire un nouveau
programme qui recherche et affiche le plus grand élément du tableau.

Exercice 7 :
Ecrire un programme qui saisit un tableau de 6 entiers puis calcule la moyenne de ces six
entiers. Attention, la moyenne des entiers n’est pas un entier.

1/4
Exercice 8 :
Ecrire un programme qui saisit 10 caractères au clavier, puis ensuite, calcule le nombre de
majuscules, et le nombre de lettres dans ce tableau. Un caractère n’est pas forcément une lettre : ce
peut être un chiffre, un signe de ponctuation, un caractère spécial.

Exercice 9 :
Soit ces déclarations :
byte b1 = 10, b2 = 20; short p = 200 ;
int n = 500; long q = 100 ; float x = 2.5f ;
double y = 5.25;
Donner le type et la valeur des expressions arithmétiques suivantes:
b1+b2 //1
p+b1 //2
b1*b2 //3
q+p*(b1+b2); //4
x+q*n //5
b1*q/x //6
b1*q*2./x //7
b1*q*2.f/x //8

Exercice 10 :
Soit ces déclarations :
char c = 60, ce = 'e', cg = 'g' ;
byte b = 10;
Donner le type et la valeur des expressions suivantes :
c+1
2*c
cg - ce
b*c

Exercice 11 :
Quels résultats fournit ce programme ?

public class OpCond {


public static void main(String[] args) {
int n=10, p=5, q=10 ;

2/4
n=p=q=5;
n += p += q ;
System.out.println ("A : n = "+ n + " p = "+ p + " q = "+ q) ;
q = n < p ? n++ : p++ ;
System.out.println ("B : n = "+ n + " p = "+ p + " q = "+ q) ;

q = n > p ? n++ : p++ ;


System.out.println ("C : n = "+ n + " p = "+ p + " q = " +q) ;
}
}

Exercice 12 :
Soit le programme suivant :
public class Exo12 {
public static void main(String[] args) {
int n ;
n = Clavier.lireInt() ;

switch (n)
{
case 0 : System.out.println ("Nul") ;
case 1 :
case 2 : System.out.println ("Petit") ;
break ;
case 3 :
case 4 :
case 5 : System.out.println ("Moyen") ;
default : System.out.println ("Grand") ;
}
}
}

Quels résultats affiche-t-il lorsqu’on lui fournit en donnée:


1. la valeur 0,
2. la valeur 1,

3/4
3. la valeur 4,
4. la valeur 10,
5. la valeur -5.
Exercice 13 :
Quelles erreurs ont été commises dans chacune des instructions suivantes ?
1. do n++ while (n<10) ;
2. do while ( (n = Clavier.lireInt()) != 10) ;
3. do ; while (true) ;
4. do {} while (false) ;

Exercice 14 :
Quelles erreurs ont été commises dans la définition de classe suivante et dans son utilisation ?
class A {
static int f (int n){
q = n ;
}
void g (int n){
q = n ;
p = n ;
}
static private final int p = 20 ;
private int q ;
}
public class EssaiA{
public static void main (String args[]){
A a = new A() ; int n = 5 ;
a.g(n) ;
a.f(n) ;
f(n) ;
}
}

4/4

Vous aimerez peut-être aussi