La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

ITI1520 Lab #6 – Les tableaux Traduit et adapté de versions antérieures créées par Sylvia Boyd, Romelia Plesa, Alan Williams, et Daniel Amyot.

Présentations similaires


Présentation au sujet: "ITI1520 Lab #6 – Les tableaux Traduit et adapté de versions antérieures créées par Sylvia Boyd, Romelia Plesa, Alan Williams, et Daniel Amyot."— Transcription de la présentation:

1 ITI1520 Lab #6 – Les tableaux Traduit et adapté de versions antérieures créées par Sylvia Boyd, Romelia Plesa, Alan Williams, et Daniel Amyot

2 Objectifs de ce laboratoire Tableaux –Déclaration de la variable de référence à un tableau –Création des tableaux –Exercices Formatage de résultats numériques

3 Tableaux Java Déclaration dune variable de référence à un tableau: DONNÉE: UnTableau (Référence à un tableau de nombres réels) double [] unTableau; // Référence Création: unTableau aura la valeur spéciale null jusquà ce quil soit vraiment créé: UnTableau CréerTableau( 5 ) unTableau = new double[5]; // Taille 5

4 La création de tableau À la déclaration de la variable de référence au tableau, elle contiendra la valeur spécial null (en fait est ladresse 0). –Lutilisation de la variable de référence ayant cette valeur (par exemple, unTableau[0] ) crée une erreur null pointer exception qui plante le programme. Après la création dun tableau (avec new), les éléments du tableau nont pas été affecté des valeurs (en Java, les éléments contiennent normalement la valeur 0). –Tenter daccéder à un élément hors de ce qui est permis (par exemple, unTableau[5] ) va faire planter le programme (Array index out of bounds exception).

5 Tableaux et length (taille) Vous pouvez demander sa taille à un tableau: double[] d; int taille; d = new double[4]; taille = d.length; // taille vaut maintenant 4 Notes: –Nutilisez pas de parenthèses () ou de crochets [] pour demander la taille. –Demander la longueur avant de créer le tableau va produire une erreur dexécution. –La taille nest PAS lindex maximal (Taille-1) mais le nombre déléments (Taille)

6 Classe ITI1520 et tableaux Voir la documentation de cette clase à ITI1520.readIntLine( ) –Retourne un tableau de int –Résultat de type int[] –Vous pouvez vérifier sa taille (length) si nécessaire! ITI1520.readDoubleLine( ) –Semblable, mais retourne un tableau de double ITI1520.readCharLine( ) –Semblable, mais retourne un tableau de char –Les espaces sont aussi inclus!

7 Exemples dutilisation de ITI1520 int x = ITI1520.readInt( ); Si vous entres 123 et appuyez ENTER, x sera affecter la valeur 123. int[] x; // Déclare une variable de référence x = ITI1520.readIntLine( ); Si vous entrez (nombres séparés par des espaces) et appuyez ENTER, x sera affecter un référence à un tableau avec 4 éléments, où x[0] contient 12, x[1] contient 3, x[2] contient 0, x[3] contient Le tableau est créé par readIntLine (avec new ), alors pas besoin de créer le tableau explicitement auparavant (mais la variable de référence doit être déclaré pour recevoir la référence). Les méthodes readDouble et readDoubleLine fonctionnent de la même façon. La méthode readCharLine place TOUS les caractères (incluant les espaces) dans un tableau de char s.

8 Exercice 1: Calculer la moyenne Écrivez un algorithme qui va calculer la moyenne des éléments dun tableau X de taille N. Implémentez votre algorithme en Java comme un méthode. –Développez un algorithme principal/méthode main pour obtenir un tableau de valeurs de lutilisateur, appelez lalgorithme/méthode pour calculer la moyenne et imprimer les résultats.

9 Exercice 2 – Le calcule de statistiques Développez un logiciel qui obtient un tableau de notes détudiants et trouve: la moyenne des notes, la note maximale, et la note minimale. –Développez vos algorithmes avec Visio et Word – commencez avec le fichier Lab5Ex2.doc. –Traduisez les algorithmes au Java. Commencez avec Gabarit.java. (vous pouvez aussi commencer avec Lab5Ex1.java.) –Lalgorithme principale (méthode main) obtient des notes détudiants de lutilisateur (stockées dans un tableau) et appelle statistique pour calculer la moyenne, le maximum, et le minimum. Il affiche aussi les résultats à lutilisateur. –Lalgorithme/méthode statistique recevra une référence au tableau et le nombre déléments du tableau comme DONNÉES/paramètres et calcule la moyenne, le minimum, et le maximum. Notez que dans le cas de lalgorithme, une référence au tableau et le nombre déléments sont les résultats de lalgorithme. Dans le cas de Java, seulement une seule valeur est retournée par la méthode – la référence au tableau.

10 Exercice 3: Lancer de balle Écrivez un algorithme qui va calculer la distance (horizontale, en mètres) parcourue par une balle lancée à v mètres par seconde, tout dépendant de langle (en degrés) du lancer. Retourne une référence à un tableau de valeurs où: Distance[0] : balle lancée à 0 degrés au-dessus de lhorizontale. Distance[1]: balle lancée à 10 degrés au-dessus de lhorizontale. … Distance[9]: balle lancée à 90 degrés au-dessus de lhorizontale. (directement vers le haut). Complétez votre programme avec un algorithme principale: appelle lalgorithme pour créer le tableau décrit ci-dessus et imprimer son contenu Développez vos algorithmes avec Visio et Word – commencez avec le fichier Lab5Ex3.doc.

11 Exercice 3: Lancer de balle distance 0 m

12 Exercice 3: Lancer de balle Formule: distance r = angle en radians où: g = 9.8, constante de gravité universelle.

13 Exercice 3: Lancer de balle Implémentez vos algorithmes en Java. Commencez avec Gabarit.java Notez bien: –Math.PI : valeur de. –Math.sin(x) : sinus de x, où x est en radians –Math.cos(x) : cosinus de x, où x est en radians

14 Formatage de sorties Java offre certaines fonctionnalités pour formater des valeurs numériques. Les résultats spécifiques vont dépendre des préférences régionales dans le panneau de contrôle de votre ordinateur –Choisir English(Canada) va faire que: Les devises auront le $ au début (à la fin en français) Il y aura des virgules au lieu despaces pour séparer les milliers, et un point au lieu de la virgule pour la partie décimale –Exemple: $45, (anglais) ,89 (français)

15 Formateur de nombres décimaux Utilise une chaîne de formatage pour identifier les endroits où placer les divers types de caractères. # Endroit pour un chiffre optionnel; si aucun chiffre alors rien nest affiché. 0 Endroit pour un chiffre non-optionnel; si aucun chiffre alors zéro est affiché.. Endroit pour un point décimal, Endroit pour un séparateur de milliers E Endroit pour indicateur dexposant (puissance de 10) $ Endroit pour un symbole de devise

16 Exemple Résultats pour une valeur double de ########12346 Arrondissement, justification à gauche Zéros supplémentaires à gauche ######.## Premier et dernier # inutilisés ###### Force 2 chiffres décimaux ###,###.0012, Utilise des virgules comme séparateurs $###,###.00$12, $ est collé sur le premier vrai chiffre #.###E E04 Arrondissement, 2 chiffres pour lexposant

17 Utilisation en Java (1) 1.Création dun nouveau formateur décimal et emmagasinage dans une variable de type DecimalFormat DecimalFormat df = new DecimalFormat("#####.##"); 2.Utilisez-le pour chaque valeur à afficher avec ce format. System.out.println("Valeur1 = " + df.format( valeur1 ) );

18 Utilisation en Java import java.text.DecimalFormat; // nécessaire pour dire où trouver DecimalFormat public class FormatTest { public static void main(String[] args) { DecimalFormat df = new DecimalFormat("#####.##"); double value1; double value2; value1 = ; value2 = ; System.out.println("Value1 = " + df.format( value1 ) ); System.out.println("Value1 = " + df.format( value2 ) ); }

19 Expérimentez! Quarrive-t-il si vous essayez de formater un entier qui a plus de chiffres que ce qui se trouve dans le format? –Exemple: formatez 1234 avec ###. Quarrive-t-il si vous incluez un symbole % à la fin du format? Comment afficheriez-vous un ensemble de valeurs double afin que les points décimaux soient alignés? –Exemple: (facile) (difficile)

20 Exercice supplémentaire: Écart type Essayer cette exercice chez vous Lécart type dun ensemble de valeurs est une mesure utilisée en statistiques pour indiquer par combien ces valeurs divergent de leur moyenne. Par exemple, la moyennes des notes pour un cours peut être de 73 sur 100. Si tout le monde a reçu 73 (ce qui est peu probable), alors lécart type est de zéro. Un écart type plus typique pourrait être de 13,75.

21 Écart type Supposons un ensemble de n valeurs représentées par {x i } où: 0 i < n. Lécart type s est calculé avec la formule: où est la moyenne des valeurs.

22 Logiciel: Écart type Écrivez un algorithme qui va calculer lécart type des nombres dun tableau X de taille N. Développez un algorithme principale qui obtient de lutilisateur un tableau de valeurs, appel lalgorithme pour calculer lécart type des valeurs, et affiche le résultat. Implémentez vos algorithmes en Java.


Télécharger ppt "ITI1520 Lab #6 – Les tableaux Traduit et adapté de versions antérieures créées par Sylvia Boyd, Romelia Plesa, Alan Williams, et Daniel Amyot."

Présentations similaires


Annonces Google