IN101 : Sujet du TD3
Groupe ESIEE, Denis BUREAU, novembre 2005.
Attention ! Le sujet peut être modifié jusqu'à la veille du TD.

1  Les objectifs

Être à l'aise avec les différents types de données standards ; savoir calculer la valeur des expressions ; savoir utiliser la syntaxe de base.

2  Notions abordées dans les 4 premiers cours

3  Apport de connaissances

4  Références dans le "Petit mémento de syntaxe Java, version 2005"

Cette version est disponible à la reprographie (salle 2007).
Voir les paragraphes 1 à 4.1, 6.1, 7 à 8.1, 8.2.2, 8.3 à 10.1, 11 à 11.2.2.1, et 15.3 à 17.

5  Évaluation d'expressions

Quelle est la valeur des expressions Java suivantes (sans calculatrice !) ?
  1. 1 + 2 / 3
  2. 1.0 + 2 / 3
  3. 1F + 2F / 3
  4. 28 % 5
  5. Math.cos(3.141592654/4) == Math.sin(3.141592654/4)

6  Classes & méthodes à écrire

  1. Écrire en Java une classe Longueur comportant 2 attributs entiers m et cm, correspondant respectivement au nombre de mètres et au nombre de centimètres de cette longueur.
    Prévoir un constructeur à 2 paramètres et une fonction totalCm() qui retourne le nombre total de centimètres.
    Exemple: 3 72 ® 372 cm
  2. Écrire en Java une classe Rationnel comportant 2 attributs entiers num et den, correspondant respectivement au numérateur et au dénominateur de ce nombre rationnel.
    Prévoir un constructeur à 2 paramètres et une fonction real() qui retourne la valeur réelle correspondante.
    Exemple: 9 2 ® 4.5
  3. Écrire en Java une classe Entier comportant 1 attribut entier n, correspondant à la valeur de ce nombre entier.
    Prévoir un constructeur à 1 paramètre et une fonction sommeJusquA() qui retourne la somme des n premiers entiers (sans faire de boucle !).
    Exemple: 10 ® 55
  4. Écrire en Java une classe Pendule comportant 1 attribut réel l, correspondant à la longueur de ce pendule.
    Prévoir un constructeur à 1 paramètre et une fonction periode() qui retourne la période du pendule selon la formule t = 2pÖ{[l/g]}    (définir g en constante).
    Exemple: 2.4525 ® 3.14159265358979
  5. Écrire en Java une classe Triangle comportant 3 attributs réels a, b, et c, correspondant aux longueurs des trois côtés de ce triangle.
    Prévoir un constructeur à 3 paramètres, une fonction perimetre() qui retourne le périmètre du triangle, et une fonction surface() qui retourne la surface du triangle selon la formule s = Ö{p (p-a)(p-b)(p-c)}  où p est le demi-périmètre du triangle   (indice : une fonction appellera l'autre...)
    Exemple: 1.5 2. 2.5 ® 1.5
  6. Écrire en Java une classe Cercle comportant 3 attributs réels x, y, et diameter, correspondant respectivement aux coordonnées du centre et au diamètre de ce cercle.
    Prévoir un constructeur à 3 paramètres, et une fonction estSur() à 2 paramètres (les coordonnées d'un point) qui retourne vrai si le point est sur le cercle, et faux sinon (attention aux problèmes de précision...).
    Exemple: 0.0 0.0 2.0 0.707107 0.707107 ® true (à 10-6 près)
  7. Écrire en Java une classe de test Expressions ne comportant qu'une méthode test(). Celle-ci créera un objet de chacune des 6 classes à tester en utilisant les valeurs données dans l'énoncé, appellera sur cet objet la (ou les) méthode(s) de la classe correspondante, et enfin affichera le résultat.
  8. En travail personnel :
    Il est conseillé de tester sur machine ces exercices avec BlueJ.



File translated from TEX by TTH, version 3.70.
On 08 Nov 2005, 12:51.