• Aucun résultat trouvé

Université de Nice-Sophia Antipolis POLYTECH

N/A
N/A
Protected

Academic year: 2022

Partager "Université de Nice-Sophia Antipolis POLYTECH"

Copied!
1
0
0

Texte intégral

(1)

Université de Nice-Sophia Antipolis POLYTECH

PeiP2 2019–2020

Examen de Programmation Objet

Durée : 0h30 Aucun document autorisé

Mobiles interdits Nom : Prénom :

I1. EnJava, qu’est-ce qu’une classe ? Quel est son rôle ?

Voir cours

. . . .

I2. Expliquez de façon claire et synthétique la notion constructeur telle qu’elle existe dans le langageJava.

Voir cours

. . . . On veut représenter les nombres complexes à partir de leurs coordonnées cartsiennes.

I3. Écrivez la classeComplexeavec :

— 2 variables réelles privées appeléespRéelleetpImg;

— 2 constructeurs publics. Le premier sans paramètre, et le second avec deux paramètres ;

— la méthode publiquesetPréellequi permet de modifier la partie réelle duComplexecourant ;

— la méthode publiquetoStringqui renvoie la représentation duComplexe courant sous forme d’uneStringau format"(pRéele,␣pImg)";

— la méthodeplusqui renvoie unComplexe, somme duComplexecourant et duComplexepassé en paramètre. Cette méthode possède l’en-tête sui- vant :publicComplexe plus(Complexe c).

p u b l i c c l a s s Complexe {

p r i v a t e double pRéelle ; //la partie réelle du complexe p r i v a t e double pImg ; //la partie imaginaire du complexe /* *

* Initialise le <code > Complexe </ code > à (0 ,0) p u b l i c*/ Complexe () {

t h i s. pRéelle = t h i s. pImg = 0;

1

} /* *

* Initialise le <code > Complexe </ code > à (r ,i)

*

* @param r a <code > double </ code >.

* @param i a <code > double </ code >.

Complexe (double*/ r , double i) { t h i s. pRéelle = r; t h i s. pImg = i;

} /* *

* affecte à la partie réelle de l ’ objet <code > Complexe </ code > courant

* la valeur <code >r <\ code >

*

* @param r un <code > double </ code >.

*/

p u b l i c v oi d setPréelle (double r) { t h i s. pRéelle = r;

} /* *

* Rôle : renvoie this + c

*

* @param c un <code > Complexe </ code >.

* @return <code > Complexe </ code >.

*/

p u b l i c Complexe plus ( Complexe c) {

r e t u r n new Complexe (t h i s. pRéelle +c. pRéelle , t h i s. pImg +c. pImg );

} /* *

* renvoie un <code > String </ code > représentation

* de l ’ objet courant <code > Complexe </ code >

*

* @return une <code > String </ code >

*/

p u b l i c String toString () {

r e t u r n "(" + t h i s. pRéelle + "␣ ,␣" + t h i s. pImg + ")";

}

} //fin classe Complexe

. . . .

I 4. Écrivez la méthodemainqui crée deux objetsComplexe(avec les valeurs de votre choix) désignée par les deux variablesc1etc2, et qui affiche leur somme sur la sortie standard

p u b l i c s t a t i c vo id main ( String [] args ) { Complexe c1 = new Complexe (3.2 , 5.9);

Complexe c2 = new Complexe ( -2.9 , 15.7);

System . out . println ( c1 . plus ( c2 ));

}

. . . .

2

Références

Documents relatifs

Écrivez de façon itérative la fonction itos qui renvoie la conversion d’un entier positif ou nul passé en paramètre, en sa représentation sous forme d’une chaîne de

Écrivez un programme qui lit sur l’entrée standard une opération arithmétique formée de 2 entiers et d’un caractère ( ’+’ , ’-’ , ’*’ ou ’/’ ) et qui écrit sur

Écrivez la fonction creerFichDates qui lit un fichier de texte contenant la suites d’entiers, et qui crée un fichier de dates valides (de type Date ).. Sans l’écrire, vous

Lors d’un appel de fonction ou de procédure, la transmission par valeur consiste à affecter, après évaluation, la valeur du pa- ramètre effectif à son paramètre formel

Au lieu de retirer, à chaque itération, 1 diviseur au dividende et d’incrémenter de 1 le quotient, le diviseur est multiplié successivement par 2 pour trouver son plus grand

qui prend en paramètre une chaîne de caractères, et qui remplace chaque chiffre par le caractère ’_’ dans celle-ci.. La fonction renvoie un pointeur sur le 1er caractère de

Il est nécessaire d’écrire un destructeur pour libérer explicitement la mémoire occupée par le tableau et les 3 points du triangle

En utilisant, la classe std::ifstream et ses méthodes is_open , get , eof et close , écrivez la classe FileInputStream qui permet de lire un fichier d’octets (et uniquement