INF11107
Programmation orientée objet I
Variables
Université du Québec À Rimouski
Département de mathématiques, d’informatique et de génie
MT. Moutacalli
Variables INF11107 Programmation orientée objet I MT. Moutacalli 1 / 26
Rappel
Variables INF11107 Programmation orientée objet I MT. Moutacalli 2 / 26
Exercice
Créer un programme qui calcule la somme de deux nombres
saisis par l’utilisateur.
Variables INF11107 Programmation orientée objet I MT. Moutacalli 3 / 26
Pseudocode
- Demander à l’utilisateur de saisir un nombre;
- Demander à l’utilisateur de saisir un deuxième nombre;
- Calculer la somme des deux nombres;
- Afficher le résultat
Variables INF11107 Programmation orientée objet I MT. Moutacalli 4 / 26
Implémenter le Pseudocode
- Demander à l’utilisateur de saisir un nombre;
Où stocker le nombre saisi?
Combien d’espace lui réserver?
Comment contrôler les erreurs de l’utilisateur?
e.g. saisir du texte au lieu d’un nombre
- Demander à l’utilisateur de saisir un deuxième nombre;
- Calculer la somme des deux nombres;
Où stocker le résultat?
- Afficher le résultat
Variables INF11107 Programmation orientée objet I MT. Moutacalli 5 / 26
Variable
Une variable est un espace de stockage (dans la mémoire).
Une variable possède plusieurs caractéristiques:
Nom;
type: nombre, texte, etc. qui détermine sa taille(1 octet, 2,
etc.);
Valeur: ce qu’elle contient;
Adresse: l’adresse de sa première case mémoire;
Portée: la portion de code source ou elle accessible
(globale ou juste dans un bloc);
visibilité: qui peut utiliser la variable (public, private, etc.);
durée de vie: le temps d’exécution pendant laquelle la
variable existe ({})
Variables INF11107 Programmation orientée objet I MT. Moutacalli 6 / 26
Type de Variable
Variables INF11107 Programmation orientée objet I MT. Moutacalli 7 / 26
Type de Variable
Variables INF11107 Programmation orientée objet I MT. Moutacalli 8 / 26
Déclaration de Variable
Pour déclarer une variable (réserver un espace mémoire pour
contenir une donnée de type prédéterminé):
Type Identificateur;
e.g.
Variables INF11107 Programmation orientée objet I MT. Moutacalli 9 / 26
Déclaration de Variable
En C#, l’Identificateur (nom de la variable) ne peut pas:
Commencer par un chiffre;
Contenir un espace;
être un mot réservé (comme int, etc.).
Conseil: utiliser des noms de variable significatifs, ça aide à
mieux comprendre le code et à sa maintenance.
e.g. salaireAnnuel au lieu de sa.
Variables INF11107 Programmation orientée objet I MT. Moutacalli 10 / 26
Déclaration de Variable
Donner le schéma mémoire pour:
byte a,b = 5;
int B = b+2;
Variables INF11107 Programmation orientée objet I MT. Moutacalli 11 / 26
Déclaration de Variable
byte a,b = 5;
int B = b+2;
C# fait la différence entre majuscule et minuscule:
Variables INF11107 Programmation orientée objet I MT. Moutacalli 12 / 26
Déclaration implicite
var Identificateur;
Comme la déclaration explicite, sauf que c’est le compilateur
qui décide du type de la variable.
e.g.
var x=7; ⇔ int x=7;
var t="texte"; ⇔ string t="texte";
Variables INF11107 Programmation orientée objet I MT. Moutacalli 13 / 26
Affectation
Variable = donnée, variable, calcule, etc.;
La variable à gauche reçoit ce qui est à droite (⇐)
Faire attention aux types.
e.g.
float N1,N2;
N1=7.5f;
N2=N1*2;
N1=N2;
(N1 contient 15 et N2 contient 15)
Variables INF11107 Programmation orientée objet I MT. Moutacalli 14 / 26
Constante
Une constante est une variable dont la valeur ne change
jamais lors de l’exécution.
e.g. const float Pi = 3.14f;
Pi = 5;
Variables INF11107 Programmation orientée objet I MT. Moutacalli 15 / 26
Texte saisi par l’utilisateur
Pour affecter un texte saisi par l’utilisateur à une variable:
string unTexte;
unTexte = [Link]();
ou
string unTexte = [Link]();
Variables INF11107 Programmation orientée objet I MT. Moutacalli 16 / 26
Conversion entre types
texte(string age="20") à entier(int sonAge) :
sonAge = [Link](age);
texte(string age="20") à réel(float sonAge) :
sonAge = [Link](age);
texte(string age="20") à double(double sonAge) :
sonAge = [Link](age);
Variables INF11107 Programmation orientée objet I MT. Moutacalli 17 / 26
Conversion entre types
On peut aussi utiliser:
Variables INF11107 Programmation orientée objet I MT. Moutacalli 18 / 26
Pseudocode de l’exercice
- Demander à l’utilisateur de saisir un nombre;
- Demander à l’utilisateur de saisir un deuxième nombre;
- Calculer la somme des deux nombres;
- Afficher le résultat
Variables INF11107 Programmation orientée objet I MT. Moutacalli 19 / 26
Solution de l’exercice
[Link]("Entrer un nombre");
int nbr1 = [Link]([Link]());
[Link]("Entrer un deuxième nombre");
int nbr2 = [Link]([Link]());
int resultat = nbr1 + nbr2;
[Link]();
[Link]("Le résultat de la somme de " + nbr1 + " et "
+ nbr2 + " est : " + resultat);
Variables INF11107 Programmation orientée objet I MT. Moutacalli 20 / 26
Exercice 2
Créer un programme qui prend le nom du produit, son prix
unitaire, la quantité achetée et affiche le montant hors taxe et le
montant avec taxe sachant que le taux de la taxe est 15%.
Variables INF11107 Programmation orientée objet I MT. Moutacalli 21 / 26
Solution Exercice 2
const float tva = 0.15f; string nomProduit;
float prixProduit; int quantite;
[Link]("Entrer le nom du produit");
nomProduit = [Link]();
[Link]("Entrer le prix unitaire du produit");
prixProduit = [Link]([Link]());
[Link]("Entrer la quantité achetée");
quantite = [Link]([Link]());
[Link]();
[Link]("Le montant hors taxe pour acheter " +
quantite + " " + nomProduit + " est " + prixProduit * quantite +
"$" + "\n Le montant avec taxe est : " + prixProduit * quantite *
(1 + tva)+"$");
Variables INF11107 Programmation orientée objet I MT. Moutacalli 22 / 26
Exercice 3
Exécuter le programme suivant (donner le contenu de la
mémoire et de l’écran):
const int n = 3;
float a = 4.5f;
float b, c;
b = [Link]([Link]());
c = 2 * [Link]([Link]());
a = (a + b + c);
[Link](a/n);
Variables INF11107 Programmation orientée objet I MT. Moutacalli 23 / 26
Solution Exercice 3
Variables INF11107 Programmation orientée objet I MT. Moutacalli 24 / 26
Solution Exercice 3
Variables INF11107 Programmation orientée objet I MT. Moutacalli 25 / 26
Solution Exercice 3
Variables INF11107 Programmation orientée objet I MT. Moutacalli 26 / 26