La programmation orientée objet - 4e édition : Cours et exercices en
Avec 80 exercices corrigés. Avec 20 exercices corrigés. ... Microsoft a développé un nouveau langage informatique purement objet C#
Corrigés des exercices sur lhéritage
Corrigés des exercices sur l'héritage. Exercice 6.1.1 comptes bancaires. On reprend les classes de comptes bancaires du cours (chapitre 16) : CompteBancaire
Corrigé des exercices sur les tableaux
Corrigé des exercices sur les tableaux. Exercice 5.1.1 tableau d'entiers. Dans cet exercice on va travailler avec un tableau d'entiers initialisé :.
Corrigés des exercices sur les interfaces
Corrigés des exercices sur les interfaces. Exercice 5.1.1 Animaux. Certain animaux peuvent crier d'autres sont muets. On représentera le fait de crier au
Apprendre la Programmation Orientée Objet
Orientée Objet avec le langage C#. 2e édition. Apprendre la POO avec le langage C# Les caractéristiques de la POO. ... Exercice corrigé .
Corrigé des exercices sur les tableaux
Corrigé des exercices sur les tableaux. Exercice 5.1.1 tableau d'entiers. Dans cet exercice on va travailler avec un tableau d'entiers initialisé :.
Corrigés des exercices sur les exceptions
Corrigés des exercices sur les exceptions. Exercice 4.1.1 exceptions prédéfinies. Complétez le programme suivant pour que les erreurs susceptibles de se
QCM de POO-2005 corrigé
Bonne réponse=1pt ; mauvaise réponse=-0.5pt ; pas de réponse=0pt. 1. L'interprétation des programmes Java est effectuée par.
175 exercices corrigés - Couvre Java 8 (Noire) (French Edition)
– S'initier à la programmation et à l'orienté objet. Avec des exemples en C C++
Apprendre la Programmation Orientée Objet
(avec exercices pratiques et corrigés). Luc GERVAIS Les caractéristiques de la POO. ... Quelques différences avec le C# .
Corrigés des exercices sur les interfaces
Exercice 5.1.1Animaux
Certain animaux peuvent crier, d"autres sont muets. On représentera le fait de crier au moyen d"une méthode affichant à l"écran le cri de l"animal. - écrire une interface contenant la méthode permettant de crier. - écrire les classes des chats, des chiens et des lapins (qui sont muets) - écrire un programme avec un tableau pour les animaux qui savent crier, le remplir avec deschiens et des chats, puis faire crier tous ces animaux. Décrire ce qui s"affiche à l"écran à l"exé-
cution de ce programme.interfaceCriant{ voidcrier(); classChatimplementsCriant{ public voidcrier(){Terminal.ecrireStringln("maou");
classChienimplementsCriant{ public voidcrier(){Terminal.ecrireStringln("wouf");
classLapin{ public voidfroncerDuNez(){ public classAnimaux{ public static voidmain(String[] a){Criant[] tab =newCriant[4];
tab[0] =newChat(); tab[1] =newChien(); tab[2] =newChat(); tab[3] =newChien(); for(inti=0; i<4; i++){ tab[i].crier(); }1Exercice 5.1.2conversion
On propose de pouvoir comparer des objets de différentes classes au moyen d"une conversion versles nombres entiers. Pour cela on va utiliser une interface avec la méthode de conversion.interfaceConvertible{
inttoInt(); }Question 1 Modifiez les classesCompteetDatevues en cours pour qu"elles implémentent cette interface.Question 2
Ecrivez une classe proposant des méthodes statiques pour comparer deux objets convertibles : unepour le test plus grand strict, une pour le test plus petit strict, une pour le test d"égalité, en comparant
les entiers obtenus par conversion.Question 3
Ajouter à la classe précédente une méthode statique permettant de trier en ordre croissant un
tableau d"objets convertibles. Pour les dates, une conversion en entier permettant de comparer deux dates selon l"ordrechronologique est pourvue de sens et facile à réaliser. Pour les comptes bancaires, il est beaucoup
plus difficile de définir un ordre qui ait un sens et puisse être utile. Il y a deux variables de type
entier dans la classe. On peut choisir l"une ou l"autre ou encore une combinaison des deux dans une formule arithmétique. Ce choix est arbitraire.interfaceConvertible{ inttoInt(); classCompteimplementsConvertible{ intsolde;String titulaire;
intnumero; publicCompte(String n,intnum){ titulaire = n; numero = num; solde = 0; voidafficher(){ voiddeposer(intmontant){ this.solde =this.solde+ montant; voidretirer(intmontant){ this.solde=this.solde-montant; public inttoInt(){2 NFA031
cCNAM 2012
returnsolde; classDateimplementsConvertible{ intjour; intmois; intannee; publicDate (intj,intm,inta){ this.jour=j; this.mois = m; this.annee = a; public voidafficherDate(){Terminal.ecrireStringln(
this.jour + "," +this.mois + "," +this.annee); public inttoInt(){ returnannee*10000+mois*100+jour; public classExoInt2{ static booleanplusGrand(Convertible c1, Convertible c2){ returnc1.toInt()>c2.toInt(); static booleanplusPetit(Convertible c1, Convertible c2){ returnc1.toInt()Convertible tampon = tab[i];
tab[i] = tab[Im]; tab[Im] = tampon; // non demande dans l"enonce, necessaire pour tester public static voidmain(String[] a){Convertible c1, c2, c3;
Convertible[] t =newConvertible[3];
c1 =newDate(10,12,2011); c2 =newDate(1,1,2014);NFA031
cCNAM 2012 3
c3 =newCompte("toto",100056); ((Compte) c3).deposer(40000); t[0] = c1; t[1] = c2; t[2] = c3; trier(t);Terminal.ecrireString("Tableautrie:");
for(inti = 0; i <= t.length -1; i++) {Terminal.ecrireString("");
Terminal.ecrireInt(t[i].toInt());
Terminal.sautDeLigne();
}Exercice 5.1.3deplacementsOn reprend l"exemple du cours à propos de formes géométriques disposant d"une opération de
translation.On veut à présent pouvoir mettre en mouvement des pièces, c"est à dire effectuer une translation
donnée à chaque top d"horloge, ce top étant matérialisé par une méthode. A l"appel de cette méthode,
la translation est effectuée.On va écrire une classe contenant dans une variable un objet à déplacer au top, cet objet étant n"im-
porte quel objet proposant l"interface AvecTranslation. Les données du déplacement seront stockées
dans autant de variables que nécessaire.Question 1
Ecrire cette classe.
Question 2
Ecrire une méthodemainavec un tableau contenant quatre objets de la classe écrite à la question
précédente, chacun d"entre eux contenant une instance de figure ou de point différente.Question 3
Ajoute à l"interface AvecTranslation une méthode permettant d"afficher la position d"un objet.Utiliser cette méthode pour afficher la situation à trois top horloge successifs.interfaceAvecTranslation{
voidafficher(); classPointimplementsAvecTranslation{ doublex, y;Point (doublexi,doubleyi){
4 NFA031
cCNAM 2012
x = xi; y = yi; static doubledistance(Point p1, Point p2){ returnMath.sqrt((p1.x-p2.x)*(p1.x-p2.x) + (p1.y-p2.y) *(p1.y-p2.y)); public voidafficher(){Terminal.ecrireStringln("Point"+x + "" + y);
public voidtranslation(doubledeplHor,doubledeplVer){ x = x + deplHor; y = y + deplHor; interfaceAvecSurface{ doublesurface();// Pas de corps de méthode // Cercle implémente les deux interfaces classCercleimplementsAvecSurface, AvecTranslation{Point centre;
doublerayon;Cercle(Point ctr,doubler){
centre = ctr; rayon = r; public doublesurface(){ returnMath.PI *rayon *rayon; public voidtranslation(doubledeplHor,doubledeplVer){ centre.translation(deplHor,deplVer); public voidafficher(){ Terminal.ecrireStringln("Cercledecentre"+centre.x + "" + centre.y); classRectangleimplementsAvecSurface, AvecTranslation{Point basGauche;
doubledimHor, dimVer;Rectangle(Point bg,doubledh,doubledv){
basGauche = bg; dimHor = dh; dimVer = dv; public doublesurface(){ returndimHor *dimVer; public voidtranslation(doubledeplHor,doubledeplVer){ basGauche.translation(deplHor,deplVer); public voidafficher(){ basGauche.x + "" + basGauche.y);NFA031
cCNAM 2012 5
classTriangleimplementsAvecSurface, AvecTranslation{Point p1, p2, p3;
Triangle(Point p1i, Point p2i, Point p3i){
p1 = p1i; p2 = p2i; p3 = p3i; public doublesurface(){ doublea = Point.distance(p1,p2); doubleb = Point.distance(p1,p3); doublec = Point.distance(p2,p3); doubledemiper = (a+b+c)/2; public voidtranslation(doubledeplHor,doubledeplVer){ p1.translation(deplHor,deplVer); p2.translation(deplHor,deplVer); p3.translation(deplHor,deplVer); public voidafficher(){ Terminal.ecrireStringln("Triangle"+p1.x + "" + p1.y); classObjetMobile{ privateAvecTranslation at; private doubledx, dy; publicObjetMobile(AvecTranslation a,doublex,doubley){ at = a; dx = x; dy = y; voidtop(){ at.translation(dx,dy); publicAvecTranslation getAT(){ returnat; public static voidmain(String[] args){Point p1 =newPoint(1,3);
Point p2 =newPoint(1,5);
Point p3 =newPoint(2,4);
Point p4 =newPoint(1,1);
Point p5 =newPoint(2,4);
Point p6 =newPoint(1,1);
Triangle t =newTriangle(p1,p2,p3);
Cercle c =newCercle(p4,2.5);
Rectangle r =newRectangle(p5,2.7,5.0);
ObjetMobile[] tab =newObjetMobile[4];
tab[0] =newObjetMobile(c,1,0); tab[1] =newObjetMobile(r,2,0); tab[2] =newObjetMobile(t,0,1); tab[3] =newObjetMobile(p6,0.5,2.5);6 NFA031
cCNAM 2012
for(inti=0; i<3; i++){ for(intj=0;j<4;j++){ tab[j].getAT().afficher(); tab[j].top(); }NFA031 cCNAM 2012 7
quotesdbs_dbs1.pdfusesText_1[PDF] exercices corrigés probabilité 1es
[PDF] exercices corrigés probabilité universitaire
[PDF] exercices corrigés probabilités conditionnelles terminale s
[PDF] exercices corrigés probabilités terminale bac pro
[PDF] exercices corrigés probabilités terminale s
[PDF] exercices corrigés probabilités variables aléatoires discrètes
[PDF] exercices corrigés produit vectoriel pdf
[PDF] exercices corrigés programmation linéaire méthode du simplexe
[PDF] exercices corrigés projectile champ pesanteur
[PDF] exercices corrigés radioactivité terminale s pdf
[PDF] exercices corrigés raisonnement par l'absurde
[PDF] exercices corrigés redressement non commandé pdf
[PDF] exercices corrigés retraitement bilan financier pdf
[PDF] exercices corrigés rmn carbone 13