notion de variable la notion de type
Transcription
notion de variable la notion de type
GROUPE ISN 1 de 4 NOTION DE VARIABLE Valeur a 4 Variable Une variable permet la manipulation de données. Elle est caractérisée par son nom (ie : « a ») qui sert à repérer une référence (emplacement mémoire). Au cours de l’évolution du programme la variable pourra prendre différentes valeur. Référence LES NOMS DE VARIABLE S Premier caractère par convention minuscule, différent d’un chiffre. Aucun espace Les majuscules sont différentes des minuscules LA NOTION DE TYPE Dans tout programme, il est nécessaire de stocker, au moins provisoirement, des valeurs, de provenances variées (données d'entrée, résultats intermédiaires, ...) Le type d’une valeur permet de différencier la nature de l’information stockée dans une variable. boolean, chart, byte,short, int, long, float, double Primitive char byte short int long float double boolean Signification Caractère Entier très court Entier court Entier Entier long flottant (réel) flottant double booléen Taille (en octets) 2 1 2 4 8 4 8 1 Plage de valeurs acceptée valeur du jeu de caractères Unicode (65000 caractères possibles) -128 à 127 -32768 à 32767 -2 147 483 648 à 2 147 483 647 -9223372036854775808 à 9223372036854775807 1.40239846 E-45F à 3.402823347E-38F 4.94065645841246544E-324 à 1.78769313486231570 E308 0 ou 1 (en réalité, toute autre valeur que 0 est considérée égale à 1) Il existe aussi le type String (chaîne de caractère) qui est un type de classe que nous verrons ultérieurement EXERCICE 1 Choisir le type d’une variable représentant l’âge d’une personne. Choisir le type d’une variable représentant l’année de naissance. GROUPE ISN 2 de 4 DECLARATION DE VARIABLE type nomDeVariable ; Ou type correspond à l’un des mots clés ou La virgule permet de séparer les deux type nomVariable1, nomVariable2 ; noms de variables lorsque celle-ci sont du même type. // Déclaration de variable int test; long codeBar; char choix; La déclaration a pour effet de réserver un emplacement mémoire. AFFECTATION DE VARIABLE L’affectation est le mécanisme qui permet de placer une valeur dans un emplacement mémoire. nomDeVariable = valeur ; Ou type correspond à l’un des mots clés ou La virgule permet de séparer les deux nomDeVariable = expression ; noms de variables lorsque celle-ci sont ; //Affectation de variables n=4; p=5*n+1; du même type. Le type de la valeur donnée à la variable doit absolument correspondre au type énoncé dans la déclaration. DECLARATION ET AFFEC TATION Une erreur de compilation est détectée si une variable à afficher ne contient pas de valeur. Une bonne habitude consiste à initialiser les variables au moment de leur déclaration. Exemples byte temperature_C= 20 ; short vitesseMax=32000 ; int temperatureSoleil=15600000 ; long anneeLumiere=9460700000000000; float pi=3.141592653f; double division=0.333333333333333333333333333333333333333333334; Rq : Les caractères sont encadrés par des simples quotes ‘car’ char choix=‛o’; Rq : Les chaînes sont délimitées par des doubles quotes : "chaîne" String message="bienvenue"; GROUPE ISN 3 de 4 LES OPERATEURS ARITHMÉTIQUES Les opérateurs de calcul permettent de modifier mathématiquement la valeur d'une variable Opérateur + * / % Dénomination opérateur d'addition opérateur de soustraction opérateur de multiplication opérateur de division opérateur modulo Effet Ajoute deux valeurs Soustrait deux valeurs Multiplie deux valeurs Divise deux valeurs Reste de la division entière Exemple x+3 x-3 x*3 x/3 x%3 Résultat (avec x valant 7) 10 4 21 2.3333333 1 Groupe 2 : + - Groupe 1 * / % Les groupes étant ainsi définis, le groupe 1 a priorité et dans un même groupe l’opération se fait dans l’ordre d’apparition LE TYPE D’UNE EXPRESSION MATHEMATIQUE Le résultat d’une opération mathématique peut être déterminé à partir du type des variables qui composent l’expression. Terme Entier Réel Opérateur +-*/% +-*/ Terme Entier Réel Résultat Entier Réel EXERCICE 2 int prem=5, sec=3, coef=2 ; resultat=coef*prem/sec; double prem=5, sec=3, coef=2 ; resultat= prem/sec*coef; Quel doit être le type de la variable resultat ? Que vaut la variable resultat après exécution des instructions ? Quel doit être le type de la variable resultat ? Que vaut la variable resultat après exécution des instructions ? GROUPE ISN 4 de 4 LA TRANSFORMATION DE TYPE L’ordinateur peut calculer une expression si toutes les variables de l’expression sont de même type. Le compilateur réalise une conversion suivant une hiérarchie qui permet de ne pas perdre de données : byte -> short -> int ->long -> float -> double LE CAST La conversion avec perte de donnée est autorisée grâce au mécanisme du « cast » int a=5, resultat ; float x = 2.0f; resultat = (int) a/x; On place devant la variable ou l’expression mathématique, le type de conversion désirée. Après ces lignes la valeur de la variable resultat est 2, car 5/2 = 2.5 ramené au type int à 2.