SlideShare une entreprise Scribd logo
1  sur  10
Page 0 sur 9
Filière et option: FL3-GC
Rédiger par : AFANOU Kossi Joachim
AGBOH Jean-Paul
KALIPE Max-Wisdom
KANGNI Assiongbon
NAPO Kpandjapou Lynda
RAPPORT D’INFORMATIQUE
THEME : PROGRAMMATION ORIENTE OBJET
Page 1 sur 9
Diriger par : Dr SALAMI & M. BINIZI
Page 2 sur 9
INTRODUCTION
Au cours de notre formation nous avons appris a programmé en langage C++. Pour mieux
maitriser cette programmation, nous avons décidé de nous intéresser à la programmation
orientée objet (P.O.O.). C’est ainsi que nous avons décidé d’écrire un programme en (P.O.O.) qui
peut manipuler les coordonnées des vecteurs dans l’espace. Dans ce rapport, nous présenterons
le programme à l’exécution et le code d’implémentation.
I. PRESENTATION DU PROGRAMME AL’EXECUTION
A. GENERALITES SUR LA PROGRAMMATION ORIENTE OBJET(P.O.O.)
Le langage C est un langage procédural, c’est-à-dire un langage permettant de définir des
données grâce à des variables, et des traitements grâce aux fonctions. L’apport principal
du langage C++ par rapport au langage C est l’intégration des concepts "objet", afin d’en
faire un langage orienté objet. Les approches orientées objets (programmation,
conception, ...) sont nombreuses et s’appliquent à de nombreux domaines autre que
l’informatique (par exemple en Ingénierie, l’électronique, l’automatisme, ...).
De nombreux outils sont disponibles pour représenter et concevoir en orienté objet.
L’UML (Unified Modeling Language, que l’on peut traduire par « langage de modélisation
unifié ») est particulièrement bien adapté à cette tâche, notamment grâce aux
diagrammes de classes, d’objets pour décrire les constituants (…) d’un système.
B. PRESENTATION DE PROGRAMME
Ce programme à l’exécution va implémenter la somme et la différence de 2 vecteurs en
faisant la somme ou la différence de leurs coordonnées, le produit de 2 vecteurs en
calculant sa norme grâce aux coordonnées des vecteurs. Il implémentera aussi les opposés
des vecteurs en déterminant l’opposée des vecteurs en questions. Il implémentera
également la translation d’un ou des vecteurs par rapport à un autre tout en manipulant
les coordonnés des vecteurs. Bref tous les types d’opérations possibles sur les vecteurs
seront implémentés par ce programme.
Page 3 sur 9
II. CODES D’IMPLEMENTATION
A. DECLARATION DE LA CLASSE
1 #include <iostream>
2 #include <conio.h>
3 #include <cmath>
4
5
6
7 using namespace std;
8
9 class vecteur
10 {
11 private : float x,y,z;
12
13 public : vecteur ();
14 vecteur (float );
15 vecteur (float, float );
16 vecteur (float, float, float );
17 vecteur operator + (vecteur);
18 vecteur operator - (vecteur);
19 vecteur opp (vecteur);
20 vecteur bar (vecteur ,vecteur);
21 float operator * (vecteur);
22 vecteur operator / (vecteur);
23 vecteur trans (float, float, float);
24 void af();
25 };
B. LES METHODES DES OPERATIONS
28 vecteur :: vecteur()
29 {
30 x=0; y=0; z=0;
31 }
32
33 vecteur :: vecteur(float u)
Page 4 sur 9
34 {
35 x=u; y=0; z=0;
36 }
37
38 vecteur :: vecteur(float u, float v)
39 {
40 x=u; y=v; z=0;
41 }
42
43 vecteur :: vecteur(float u, float v, float w)
44 {
45 x=u; y=v; z=w;
46 }
47
48 vecteur vecteur :: operator +(vecteur i)
49 {
50 vecteur a;
51 a.x = x+i.x;
52 a.y = y+i.y;
53 a.z = z+i.z;
54 return (a);
55 }
56
57 vecteur vecteur :: operator -(vecteur i)
58 {
59 vecteur a;
60 a.x = x-i.x;
61 a.y = y-i.y;
62 a.z = z-i.z;
63 return (a);
64 }
65
66 float vecteur :: operator *(vecteur i)
67 {
68 float b;
69 b = x*i.x + y*i.y+ z*i.z;
70 return (b);
71 }
72
73
74 vecteur vecteur :: operator /(vecteur i)
Page 5 sur 9
75 {
76 vecteur a;
77 a.x = y*i.z-i.y*z;
78 a.y = i.x*z-x*i.z;
79 a.z = x*i.y-i.x*y;
80 return (a);
81 }
82
83 vecteur vecteur :: trans (float s, float t, float
u)
84 {
85 vecteur i;
86 i.x = x+s;
87 i.y = y+t;
88 i.z = z+u;
89 return (i);
90 }
91
92 vecteur vecteur::bar (vecteur r, vecteur s)
93 {
94 vecteur j;
95 float a=2,b=3;
96 j.x=(a*r.x+b*s.x)/(a+b);
97 j.y=(a*r.y+b*s.y)/(a+b);
98 j.z=0;
99 return(j);
100 }
101
102 vecteur vecteur::opp (vecteur h)
103 {
104 vecteur d;
105 d.x=-h.x;
106 d.y=-h.y;
107 d.z=-h.z;
108 return (d);
109 }
110 void vecteur :: af()
111 {
112 cout<<"coordonnees : ( "<<x<<" , "<<y<<" ,
"<<z<<" )."<<endl;
113 }
Page 6 sur 9
C. LA FONCTION MAIN
115 int main(int argc, char** argv)
116 {
122 vecteur I,J,K,L,g,e,m,r,s,t,u,v,w;
123 vecteur d, a(7,-4), b(2,6,-4), c(-1,4,9);
124 float Q,p=0,l=2,n=-1,C;
125 cout<<" soit les vecteurs A, B, C dans l'ordre
"<<endl;cout<<" vecteur A de ";
126 a.af(); cout<<" vecteur B de "; b.af();
cout<<" vecteur C de "; c.af();
127 cout<<endl;
128 cout<<" la somme du vecteur A,B, et A,C dans
l'ordre donne: "<<endl;
129 g=a+b;
130 d=a+c;
131 cout<<" vecteur g = A + B de ";
132 g.af();
133 cout<<" vecteur d = A + C de ";
134 d.af();
135 cout<<endl;
136 cout<<" la difference entre les vecteurs A,B
et A,C dans l'ordre donne: "<<endl;
137 J=a-b;
138 L=a-c;
139 cout<<" vecteur j = A - B de ";
140 J.af();
141 cout<<" vecteur L = A - C de ";
142 L.af();
143 cout<<endl;
144 cout<<" la norme du vecteur A*B et du vecteur
A*C dans l'ordre donne: "<<endl;
145 Q=a*b;
146 C=a*c;
147 cout<<"la norme de A B est donné par Q =
"<<Q<<endl;
148 cout<<"la norme de A B est donné par C =
"<<C<<endl;
149 cout<<endl;
150 cout<<" cette fonction ci donne l'oppose d'un
Page 7 sur 9
vecteur donne "<<endl<<"l'oppose de tous les vecteurs
que nous avons"<<endl<<" depuis le debut dans l'ordre
nous donne: "<<endl;
151 I=I.opp(a);
152 K=K.opp(b);
153 e=e.opp(c);
154 m=m.opp(g);
155 r=r.opp(d);
156 s=s.opp(J);
157 t=t.opp(L);
158 cout<<" vecteur A' de ";
159 I.af();cout<<" vecteur B' de ";
160 K.af();cout<<" vecteur C' de ";
161 e.af();cout<<" vecteur g' de ";
162 m.af();cout<<" vecteur d' de ";
163 r.af();cout<<" vecteur j' de ";
164 s.af();cout<<" vecteur L' de ";
165 t.af();
166 cout<<endl;
167 cout<<" la translation des vecteurs de départ
A,B,C par un autre"<<endl<<" vecteur de coordonnees (0,
2 ,-1) dans l'ordre donne: "<<endl;
168 u=a.trans(p,l,n);
169 v=b.trans(p,l,n);
170 w=c.trans(p,l,n);
171 cout<<" vecteur A'' de ";u.af();
172 cout<<" vecteur B'' de ";v.af();
173 cout<<" vecteur C'' de ";w.af();
179
180 getch();
181
182 }
Page 8 sur 9
III. APERCU DU PROGRAMME AL’EXECUTION
Page 9 sur 9
CONCLUSION
La manipulationdescoordonnées desvecteursparpar

Contenu connexe

Tendances (20)

C4 fonctions
C4 fonctionsC4 fonctions
C4 fonctions
 
Fiche3 ex-sous-programme
Fiche3 ex-sous-programmeFiche3 ex-sous-programme
Fiche3 ex-sous-programme
 
Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)
 
TP C++ : enoncé
TP C++ : enoncéTP C++ : enoncé
TP C++ : enoncé
 
Algorithmique programmation2018
Algorithmique programmation2018Algorithmique programmation2018
Algorithmique programmation2018
 
TP C++ : Correction
TP C++ : CorrectionTP C++ : Correction
TP C++ : Correction
 
Fiche2 ex-sous-programme
Fiche2 ex-sous-programmeFiche2 ex-sous-programme
Fiche2 ex-sous-programme
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximation
 
Résumer arithmétique
Résumer arithmétiqueRésumer arithmétique
Résumer arithmétique
 
Ch08
Ch08Ch08
Ch08
 
Serie2
Serie2Serie2
Serie2
 
Exercices pascal tous les chapitres
Exercices pascal tous les chapitresExercices pascal tous les chapitres
Exercices pascal tous les chapitres
 
01 correction-td smia-s2-info2
01 correction-td smia-s2-info201 correction-td smia-s2-info2
01 correction-td smia-s2-info2
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
Récursivité
RécursivitéRécursivité
Récursivité
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018
 
Langage C
Langage  CLangage  C
Langage C
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
DCT1 4SI
DCT1  4SIDCT1  4SI
DCT1 4SI
 
Chapitre2 prog dsplf3
Chapitre2 prog dsplf3Chapitre2 prog dsplf3
Chapitre2 prog dsplf3
 

En vedette

MADE IN Sprimont (2015)
MADE IN Sprimont (2015)MADE IN Sprimont (2015)
MADE IN Sprimont (2015)CCILVN
 
Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...
Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...
Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...gimwebgis
 
Internet[2]
Internet[2]Internet[2]
Internet[2]karen
 
Bloque cierre
Bloque cierreBloque cierre
Bloque cierrecanarte
 
Los Proyectos de Aula
Los Proyectos de AulaLos Proyectos de Aula
Los Proyectos de AulaOlga Lugo
 
Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020
Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020
Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020Pôle Aménagement de la Maison
 
Etude des APPN dans la communauté de commune de Saint-Savin
Etude des APPN dans la communauté de commune de Saint-SavinEtude des APPN dans la communauté de commune de Saint-Savin
Etude des APPN dans la communauté de commune de Saint-SavinMikael DERBAL
 
Guide du membre.Que faire en cas de décès ou d'inaptitude?
Guide du membre.Que faire en cas de décès ou d'inaptitude?Guide du membre.Que faire en cas de décès ou d'inaptitude?
Guide du membre.Que faire en cas de décès ou d'inaptitude?aderm
 
14 04 19 powerpoint monica l3 fle
14 04 19 powerpoint monica l3 fle14 04 19 powerpoint monica l3 fle
14 04 19 powerpoint monica l3 fleMonicaVAsquezOs
 
Enquête Hiscox 2015, ADN d'un entrepreneur
Enquête Hiscox 2015, ADN d'un entrepreneurEnquête Hiscox 2015, ADN d'un entrepreneur
Enquête Hiscox 2015, ADN d'un entrepreneurHiscox
 
Eje tematico 4
Eje tematico 4Eje tematico 4
Eje tematico 4EDISON
 
Témoignage de collégiens vivant en résidence alternée
Témoignage de collégiens vivant en résidence alternéeTémoignage de collégiens vivant en résidence alternée
Témoignage de collégiens vivant en résidence alternéeformationemploi2010
 
Campus des Technologies Médicales - Alsace BioValley
Campus des Technologies Médicales - Alsace BioValleyCampus des Technologies Médicales - Alsace BioValley
Campus des Technologies Médicales - Alsace BioValleyAlsace BioValley
 
La hermos..
La hermos..La hermos..
La hermos..Google
 

En vedette (20)

Ranger, nettoyer, optimiser son pc - pptx
Ranger, nettoyer, optimiser son pc - pptxRanger, nettoyer, optimiser son pc - pptx
Ranger, nettoyer, optimiser son pc - pptx
 
MADE IN Sprimont (2015)
MADE IN Sprimont (2015)MADE IN Sprimont (2015)
MADE IN Sprimont (2015)
 
Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...
Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...
Géoguichet urbanisme 2 - Actualiser un permis à l’aide de votre géoguichet Ur...
 
Internet[2]
Internet[2]Internet[2]
Internet[2]
 
Bloque cierre
Bloque cierreBloque cierre
Bloque cierre
 
Los Proyectos de Aula
Los Proyectos de AulaLos Proyectos de Aula
Los Proyectos de Aula
 
Generaciones Talgo
Generaciones TalgoGeneraciones Talgo
Generaciones Talgo
 
Eben ezer
Eben ezerEben ezer
Eben ezer
 
Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020
Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020
Rapport d'activité 2014 - 2015 - Vision PAMA 2017 - 2020
 
Etude des APPN dans la communauté de commune de Saint-Savin
Etude des APPN dans la communauté de commune de Saint-SavinEtude des APPN dans la communauté de commune de Saint-Savin
Etude des APPN dans la communauté de commune de Saint-Savin
 
Guide du membre.Que faire en cas de décès ou d'inaptitude?
Guide du membre.Que faire en cas de décès ou d'inaptitude?Guide du membre.Que faire en cas de décès ou d'inaptitude?
Guide du membre.Que faire en cas de décès ou d'inaptitude?
 
Slide 1
Slide 1Slide 1
Slide 1
 
14 04 19 powerpoint monica l3 fle
14 04 19 powerpoint monica l3 fle14 04 19 powerpoint monica l3 fle
14 04 19 powerpoint monica l3 fle
 
Enquête Hiscox 2015, ADN d'un entrepreneur
Enquête Hiscox 2015, ADN d'un entrepreneurEnquête Hiscox 2015, ADN d'un entrepreneur
Enquête Hiscox 2015, ADN d'un entrepreneur
 
Noviolencia propuesta
Noviolencia propuestaNoviolencia propuesta
Noviolencia propuesta
 
Eje tematico 4
Eje tematico 4Eje tematico 4
Eje tematico 4
 
Témoignage de collégiens vivant en résidence alternée
Témoignage de collégiens vivant en résidence alternéeTémoignage de collégiens vivant en résidence alternée
Témoignage de collégiens vivant en résidence alternée
 
Finance - Baromètre Compétitivité des ETI : le chantier reste ouvert
Finance - Baromètre Compétitivité des ETI : le chantier reste ouvertFinance - Baromètre Compétitivité des ETI : le chantier reste ouvert
Finance - Baromètre Compétitivité des ETI : le chantier reste ouvert
 
Campus des Technologies Médicales - Alsace BioValley
Campus des Technologies Médicales - Alsace BioValleyCampus des Technologies Médicales - Alsace BioValley
Campus des Technologies Médicales - Alsace BioValley
 
La hermos..
La hermos..La hermos..
La hermos..
 

Similaire à Ds2 informatique

Introduction à Angular JS
Introduction à Angular JSIntroduction à Angular JS
Introduction à Angular JSAntoine Rey
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSSAyoubElmrabet6
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 
Présentation Javascript à l'ESI (Alger)
Présentation Javascript à l'ESI (Alger)Présentation Javascript à l'ESI (Alger)
Présentation Javascript à l'ESI (Alger)Dr Samir A. ROUABHI
 
Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1Laurent BUNIET
 
Td serie a-abstract-cast-heritage
Td serie a-abstract-cast-heritageTd serie a-abstract-cast-heritage
Td serie a-abstract-cast-heritageAmel Morchdi
 
Enrichissez vos-classes-avec-extends-20
Enrichissez vos-classes-avec-extends-20Enrichissez vos-classes-avec-extends-20
Enrichissez vos-classes-avec-extends-20Asmaa BENGUEDDACH
 
Partie1 TypeScript
Partie1 TypeScriptPartie1 TypeScript
Partie1 TypeScriptHabib Ayad
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logiciellecyrilgandon
 
Cours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMACours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMALoic Yon
 
Javascript - Fonctions : que fait ce code ?
Javascript - Fonctions : que fait ce code ?Javascript - Fonctions : que fait ce code ?
Javascript - Fonctions : que fait ce code ?Ruau Mickael
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithmemustapha4
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesECAM Brussels Engineering School
 
201303 - Java8
201303 - Java8201303 - Java8
201303 - Java8lyonjug
 

Similaire à Ds2 informatique (20)

C# 7 - Nouveautés
C# 7 - NouveautésC# 7 - Nouveautés
C# 7 - Nouveautés
 
Introduction à Angular JS
Introduction à Angular JSIntroduction à Angular JS
Introduction à Angular JS
 
Matlab
MatlabMatlab
Matlab
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSS
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Présentation Javascript à l'ESI (Alger)
Présentation Javascript à l'ESI (Alger)Présentation Javascript à l'ESI (Alger)
Présentation Javascript à l'ESI (Alger)
 
Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1
 
Td serie a-abstract-cast-heritage
Td serie a-abstract-cast-heritageTd serie a-abstract-cast-heritage
Td serie a-abstract-cast-heritage
 
Trivial Java - Part 2
Trivial Java - Part 2Trivial Java - Part 2
Trivial Java - Part 2
 
Enrichissez vos-classes-avec-extends-20
Enrichissez vos-classes-avec-extends-20Enrichissez vos-classes-avec-extends-20
Enrichissez vos-classes-avec-extends-20
 
Partie1 TypeScript
Partie1 TypeScriptPartie1 TypeScript
Partie1 TypeScript
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logicielle
 
Cours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMACours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMA
 
Javascript - Fonctions : que fait ce code ?
Javascript - Fonctions : que fait ce code ?Javascript - Fonctions : que fait ce code ?
Javascript - Fonctions : que fait ce code ?
 
Dijkstra kshortest
Dijkstra kshortestDijkstra kshortest
Dijkstra kshortest
 
Chapitre 04 : les fonctions
Chapitre 04 : les fonctionsChapitre 04 : les fonctions
Chapitre 04 : les fonctions
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithme
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de données
 
Language-C.ppt
Language-C.pptLanguage-C.ppt
Language-C.ppt
 
201303 - Java8
201303 - Java8201303 - Java8
201303 - Java8
 

Dernier

7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptx7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptxrababouerdighi
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxAsmaa105193
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeBenamraneMarwa
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 

Dernier (15)

7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptx7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptx
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. Marocpptx
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étude
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 

Ds2 informatique

  • 1. Page 0 sur 9 Filière et option: FL3-GC Rédiger par : AFANOU Kossi Joachim AGBOH Jean-Paul KALIPE Max-Wisdom KANGNI Assiongbon NAPO Kpandjapou Lynda RAPPORT D’INFORMATIQUE THEME : PROGRAMMATION ORIENTE OBJET
  • 2. Page 1 sur 9 Diriger par : Dr SALAMI & M. BINIZI
  • 3. Page 2 sur 9 INTRODUCTION Au cours de notre formation nous avons appris a programmé en langage C++. Pour mieux maitriser cette programmation, nous avons décidé de nous intéresser à la programmation orientée objet (P.O.O.). C’est ainsi que nous avons décidé d’écrire un programme en (P.O.O.) qui peut manipuler les coordonnées des vecteurs dans l’espace. Dans ce rapport, nous présenterons le programme à l’exécution et le code d’implémentation. I. PRESENTATION DU PROGRAMME AL’EXECUTION A. GENERALITES SUR LA PROGRAMMATION ORIENTE OBJET(P.O.O.) Le langage C est un langage procédural, c’est-à-dire un langage permettant de définir des données grâce à des variables, et des traitements grâce aux fonctions. L’apport principal du langage C++ par rapport au langage C est l’intégration des concepts "objet", afin d’en faire un langage orienté objet. Les approches orientées objets (programmation, conception, ...) sont nombreuses et s’appliquent à de nombreux domaines autre que l’informatique (par exemple en Ingénierie, l’électronique, l’automatisme, ...). De nombreux outils sont disponibles pour représenter et concevoir en orienté objet. L’UML (Unified Modeling Language, que l’on peut traduire par « langage de modélisation unifié ») est particulièrement bien adapté à cette tâche, notamment grâce aux diagrammes de classes, d’objets pour décrire les constituants (…) d’un système. B. PRESENTATION DE PROGRAMME Ce programme à l’exécution va implémenter la somme et la différence de 2 vecteurs en faisant la somme ou la différence de leurs coordonnées, le produit de 2 vecteurs en calculant sa norme grâce aux coordonnées des vecteurs. Il implémentera aussi les opposés des vecteurs en déterminant l’opposée des vecteurs en questions. Il implémentera également la translation d’un ou des vecteurs par rapport à un autre tout en manipulant les coordonnés des vecteurs. Bref tous les types d’opérations possibles sur les vecteurs seront implémentés par ce programme.
  • 4. Page 3 sur 9 II. CODES D’IMPLEMENTATION A. DECLARATION DE LA CLASSE 1 #include <iostream> 2 #include <conio.h> 3 #include <cmath> 4 5 6 7 using namespace std; 8 9 class vecteur 10 { 11 private : float x,y,z; 12 13 public : vecteur (); 14 vecteur (float ); 15 vecteur (float, float ); 16 vecteur (float, float, float ); 17 vecteur operator + (vecteur); 18 vecteur operator - (vecteur); 19 vecteur opp (vecteur); 20 vecteur bar (vecteur ,vecteur); 21 float operator * (vecteur); 22 vecteur operator / (vecteur); 23 vecteur trans (float, float, float); 24 void af(); 25 }; B. LES METHODES DES OPERATIONS 28 vecteur :: vecteur() 29 { 30 x=0; y=0; z=0; 31 } 32 33 vecteur :: vecteur(float u)
  • 5. Page 4 sur 9 34 { 35 x=u; y=0; z=0; 36 } 37 38 vecteur :: vecteur(float u, float v) 39 { 40 x=u; y=v; z=0; 41 } 42 43 vecteur :: vecteur(float u, float v, float w) 44 { 45 x=u; y=v; z=w; 46 } 47 48 vecteur vecteur :: operator +(vecteur i) 49 { 50 vecteur a; 51 a.x = x+i.x; 52 a.y = y+i.y; 53 a.z = z+i.z; 54 return (a); 55 } 56 57 vecteur vecteur :: operator -(vecteur i) 58 { 59 vecteur a; 60 a.x = x-i.x; 61 a.y = y-i.y; 62 a.z = z-i.z; 63 return (a); 64 } 65 66 float vecteur :: operator *(vecteur i) 67 { 68 float b; 69 b = x*i.x + y*i.y+ z*i.z; 70 return (b); 71 } 72 73 74 vecteur vecteur :: operator /(vecteur i)
  • 6. Page 5 sur 9 75 { 76 vecteur a; 77 a.x = y*i.z-i.y*z; 78 a.y = i.x*z-x*i.z; 79 a.z = x*i.y-i.x*y; 80 return (a); 81 } 82 83 vecteur vecteur :: trans (float s, float t, float u) 84 { 85 vecteur i; 86 i.x = x+s; 87 i.y = y+t; 88 i.z = z+u; 89 return (i); 90 } 91 92 vecteur vecteur::bar (vecteur r, vecteur s) 93 { 94 vecteur j; 95 float a=2,b=3; 96 j.x=(a*r.x+b*s.x)/(a+b); 97 j.y=(a*r.y+b*s.y)/(a+b); 98 j.z=0; 99 return(j); 100 } 101 102 vecteur vecteur::opp (vecteur h) 103 { 104 vecteur d; 105 d.x=-h.x; 106 d.y=-h.y; 107 d.z=-h.z; 108 return (d); 109 } 110 void vecteur :: af() 111 { 112 cout<<"coordonnees : ( "<<x<<" , "<<y<<" , "<<z<<" )."<<endl; 113 }
  • 7. Page 6 sur 9 C. LA FONCTION MAIN 115 int main(int argc, char** argv) 116 { 122 vecteur I,J,K,L,g,e,m,r,s,t,u,v,w; 123 vecteur d, a(7,-4), b(2,6,-4), c(-1,4,9); 124 float Q,p=0,l=2,n=-1,C; 125 cout<<" soit les vecteurs A, B, C dans l'ordre "<<endl;cout<<" vecteur A de "; 126 a.af(); cout<<" vecteur B de "; b.af(); cout<<" vecteur C de "; c.af(); 127 cout<<endl; 128 cout<<" la somme du vecteur A,B, et A,C dans l'ordre donne: "<<endl; 129 g=a+b; 130 d=a+c; 131 cout<<" vecteur g = A + B de "; 132 g.af(); 133 cout<<" vecteur d = A + C de "; 134 d.af(); 135 cout<<endl; 136 cout<<" la difference entre les vecteurs A,B et A,C dans l'ordre donne: "<<endl; 137 J=a-b; 138 L=a-c; 139 cout<<" vecteur j = A - B de "; 140 J.af(); 141 cout<<" vecteur L = A - C de "; 142 L.af(); 143 cout<<endl; 144 cout<<" la norme du vecteur A*B et du vecteur A*C dans l'ordre donne: "<<endl; 145 Q=a*b; 146 C=a*c; 147 cout<<"la norme de A B est donné par Q = "<<Q<<endl; 148 cout<<"la norme de A B est donné par C = "<<C<<endl; 149 cout<<endl; 150 cout<<" cette fonction ci donne l'oppose d'un
  • 8. Page 7 sur 9 vecteur donne "<<endl<<"l'oppose de tous les vecteurs que nous avons"<<endl<<" depuis le debut dans l'ordre nous donne: "<<endl; 151 I=I.opp(a); 152 K=K.opp(b); 153 e=e.opp(c); 154 m=m.opp(g); 155 r=r.opp(d); 156 s=s.opp(J); 157 t=t.opp(L); 158 cout<<" vecteur A' de "; 159 I.af();cout<<" vecteur B' de "; 160 K.af();cout<<" vecteur C' de "; 161 e.af();cout<<" vecteur g' de "; 162 m.af();cout<<" vecteur d' de "; 163 r.af();cout<<" vecteur j' de "; 164 s.af();cout<<" vecteur L' de "; 165 t.af(); 166 cout<<endl; 167 cout<<" la translation des vecteurs de départ A,B,C par un autre"<<endl<<" vecteur de coordonnees (0, 2 ,-1) dans l'ordre donne: "<<endl; 168 u=a.trans(p,l,n); 169 v=b.trans(p,l,n); 170 w=c.trans(p,l,n); 171 cout<<" vecteur A'' de ";u.af(); 172 cout<<" vecteur B'' de ";v.af(); 173 cout<<" vecteur C'' de ";w.af(); 179 180 getch(); 181 182 }
  • 9. Page 8 sur 9 III. APERCU DU PROGRAMME AL’EXECUTION
  • 10. Page 9 sur 9 CONCLUSION La manipulationdescoordonnées desvecteursparpar