int valeur=2; valeur=valeur+1; valeur=valeur*2; valeur=valeur%5;
int a=5; int b=7 a=b; b=a;
int x=2,y=10,z; z=x+y; x=5; z=z-x;
int valeur=7,chiffre=2,i1,i2; double f1,f2; i1=valeur/chiffre; i2=chiffre/valeur; f1=(double)(valeur/chiffre); f2=(double)(valeur/chiffre)+0.5; i1=(int)f1; i2=(int)f2; f1=(double)valeur/(double)chiffre; f2=(double)valeur/(double)chiffre+0.5; i1=(int)f1; i2=(int)f2;
int i=223,j=135; double a=335.5,b=20.5; std::cout << "La valeur de i : " << i << "\n"; std::cout << "Pour un montant de " << a << " le total vaut : " << i+j << "\n"; std::cout << "Apres reduction de " << b << "%, vous gagnez : \n"; std::cout << (a*b)/100 << " euros\n"; std::cout << "la variable R= " << R << " et T= " << T);
#includeusing namespace std; int main() { int a,b,c; cout << "Entrez trois nombres\n"; cout << "a : "; cin >> a; cout << "\nb : "; cin >> b; cout << "\nc : "; cin >> c; if(c=(a-b)) { cout << "a:" << a << "moins b:" << b << " egale c:"<< c << "\n"; } else { cout << "a-b n'egale pas c"; } return 0; }
int main() { int a; double x; std::cout << "Valeur de a : "<< a << " valeur de x : " << x << "\n"; return 0; }
#includeint main() { int a=5; int *b=&a; *b=6; std::cout << "Valeur de b : "<< b << " valeur de a : " << a << "\n"; return 0; }
Noter que ce qui a ete présenté dans le cours 0.2 sur le stockage en mémoire pour les variables objet n'est pas vrai pour la création statique des objets présentée dans le cours 2.2, mais correspond à la création dynamique présentée plus loin. Avec la création dynamique, le fonctionnement est similaire à celui des variables primitives. Les deux exercices suivants l'illustrent. Encore une fois, ce mode de déclaration et de manipulation sera moins utilisé dans la suite.
/*Declaration des objets*/ #includeclass F{ public : int a,b,c; void modifA(int val); F(int valA,int valB,int valC); void afficheValeurs(); }; /*Le corps des fonctions*/ void modifValeur1(int i,int h) { i=h; } void modifValeur2(F f,int h) { f.b=h; } void F::modifA(int val) { a=val; } F::F(int valA,int valB,int valC) { a=valA; b=valB; c=valC; } void F::afficheValeurs() { std::cout << "Valeurs a:" << a << " b:" << b << " c:" << c << "\n"; } /*Declaration des fonctions*/ void modifValeur1(int i,int h); void modifValeur2(F f,int h); int main() { F obj(6,7,8); obj.afficheValeurs(); int y; modifValeur1(y,5); modifValeur2(obj,10); obj.modifA(15); obj.afficheValeurs(); return 0; }
#includeChangez la fonction main par le code suivantclass F{ public : int a,b,c; void modifA(int val); F(int valA,int valB,int valC); void afficheValeurs(); }; /*Le corps des fonctions*/ void modifValeur1(int i,int h) { i=h; } void modifValeur2(F f,int h) { f.b=h; } void F::modifA(int val) { a=val; } F::F(int valA,int valB,int valC) { a=valA; b=valB; c=valC; } void F::afficheValeurs() { std::cout << "Valeurs a:" << a << " b:" << b << " c:" << c << "\n"; } int main() { F f1(5,6,7); F f2=f1; f1.a=10; f1.afficheValeurs(); f2.afficheValeurs(); return 0; }
int main() { F *f1=new F(5,6,7); F *f2=f1; f1->a=10; *f1.afficheValeurs(); *f2.afficheValeurs(); return 0; }commentez l'affichage (ici on n'a fait de la création dynamique, on ne manipule plus des variable de type F, mais des variables de type F * : des pointeurs sur des objets de type F).
#includeint main() { int *a; *a=7; std::cout << *a; return 0; }
#includeint main() { int *a; int *c; int b=7; a=&b; c=&b; *a=5; std::cout << b; return 0; }
#includeclass B{ public : int t; }; class A{ public : B varB; }; void testModif(A varA); void testModif2(A *varA); int main() { A a; testModif(a); std::cout << a.varB.t << "\n"; testModif2(&a); std::cout << a.varB.t; } void testModif(A varA) { varA.varB.t=7; } void testModif2(A *varA) { varA->varB.t=7; }