You are on page 1of 16

Informe de Laboratorio Nº 6

Ejemplo 1:

Coódigo en C++
1. #include<iostream>
2. #include<conio.h>
3. class Figuras
4. {
5. protected:
6. char identificar[25];
7. float area;
8. public:
9. virtual void CalcularArea();
10. virtual void DibujarFigura();
11. virtual void Identificar();
12. };
13. void Figuras::CalcularArea()
14. {
15. }
16. void Figuras::DibujarFigura()
17. {
18. cout<<"No hay dibujo disponible.."<<endl;
19. }
20. void Figuras::Identificar()
21. {
22. cout<<endl<<"Nombre Figura: "<<identificar<<endl;
23. cout<<"El area es :"<<area<<endl;
24. }
25. class Rectangulo:public Figuras
26. {
27. protected:
28. float base;
29. float altura;
30. public:
31. Rectangulo(float b,float a);
32. void CalcularArea();
33. void DibujarFigura();
34. void Identificar();
35. };
36. Rectangulo::Rectangulo(float b,float a)
37. {
38. base=b;
39. altura=a;
40. strcpy(identificar, "Rectangulo");
41. }
42. void Rectangulo::CalcularArea()
43. {
44. area=(base*altura);
45. }
46. void Rectangulo::DibujarFigura()
47. {
48. cout<<endl;
49. cout<<"**********"<<endl;
50. cout<<"* *"<<endl;
51. cout<<"* * altura ="<<altura<<endl;
52. cout<<"* *"<<endl;
53. cout<<"**********"<<endl;
54. cout<<"Base = "<<base<<endl;
55. }
56. void Rectangulo::Identificar()
57. {
58. Figuras::Identificar();
59. cout<<endl<<"Sus datos son:"<<endl;
60. }
61. class Triangulo:public Figuras
62. {
63. protected:
64. float base;
65. float altura;
66. public:
67. Triangulo(float b,float a);
68. void CalcularArea();
69. void DibujarFigura();
70. void Identificar();
71. };
72. Triangulo::Triangulo(float b,float a)
73. {
74. base=b;
75. altura=a;
76. strcpy(identificar, "Triangulo" );
77. }
78. void Triangulo::CalcularArea()
79. {
80. area=(base*altura)/2;
81. }
82. void Triangulo::DibujarFigura()
83. {
84. cout<<endl;
85. cout<<" ** "<<endl;
86. cout<<" * *"<<endl;
87. cout<<" * * altura ="<<altura<<endl;
88. cout<<"* *"<<endl;
89. cout<<"*********"<<endl;
90. cout<<"Base = "<<base<<endl;
91. }
92. void Triangulo::Identificar()
93. {
94. Figuras::Identificar();
95. cout<<endl<<"Sus datos son:"<<endl<<endl;;
96. }
97. int main()
98. {
99. Rectangulo Rec(10,10);
100. Triangulo Tri(5,5);
101.
102. Rec.CalcularArea();
103. Rec.Identificar();
104. Rec.DibujarFigura();
105.
106. Tri.CalcularArea();
107. Tri.Identificar();
108. Tri.DibujarFigura();
109.
110. getch();
111. return 0;
112. }

Ejecución del programa


Ejemplo 2:

Código en C++
1. #include<iostream>
2. #include<conio.h>
3. class Figuras
4. {
5. protected:
6. char identificar[25];
7. float area;
8. public:
9. virtual void CalcularArea();
10. virtual void DibujarFigura();
11. virtual void Identificar();
12. };
13. void Figuras::CalcularArea()
14. {
15. }
16. void Figuras::DibujarFigura()
17. {
18. cout<<"No hay dibujo disponible.."<<endl;
19. }
20. void Figuras::Identificar()
21. {
22. cout<<endl<<"Nombre Figura: "<<identificar<<endl;
23. cout<<"El area es :"<<area<<endl;
24. }
25. class Rectangulo:public Figuras
26. {
27. protected:
28. float base;
29. float altura;
30. public:
31. Rectangulo(float b,float a);
32. void CalcularArea();
33. void DibujarFigura();
34. void Identificar();
35. };
36. Rectangulo::Rectangulo(float b,float a)
37. {
38. base=b;
39. altura=a;
40. strcpy(identificar, "Rectangulo");
41. }
42. void Rectangulo::CalcularArea()
43. {
44. area=(base*altura);
45. }
46. void Rectangulo::DibujarFigura()
47. {
48. cout<<endl;
49. cout<<"**********"<<endl;
50. cout<<"* *"<<endl;
51. cout<<"* * altura ="<<altura<<endl;
52. cout<<"* *"<<endl;
53. cout<<"**********"<<endl;
54. cout<<"Base = "<<base<<endl;
55. }
56. void Rectangulo::Identificar()
57. {
58. Figuras::Identificar();
59. cout<<endl<<"Sus datos son:"<<endl;
60. }
61. class Triangulo:public Figuras
62. {
63. protected:
64. float base;
65. float altura;
66. public:
67. Triangulo(float b,float a);
68. void CalcularArea();
69. void DibujarFigura();
70. void Identificar();
71. };
72. Triangulo::Triangulo(float b,float a)
73. {
74. base=b;
75. altura=a;
76. strcpy(identificar, "Triangulo" );
77. }
78. void Triangulo::CalcularArea()
79. {
80. area=(base*altura)/2;
81. }
82. void Triangulo::DibujarFigura()
83. {
84. cout<<endl;
85. cout<<" ** "<<endl;
86. cout<<" * *"<<endl;
87. cout<<" * * altura ="<<altura<<endl;
88. cout<<"* *"<<endl;
89. cout<<"*********"<<endl;
90. cout<<"Base = "<<base<<endl;
91. }
92. void Triangulo::Identificar()
93. {
94. Figuras::Identificar();
95. cout<<endl<<"Sus datos son:"<<endl<<endl;;
96. }
97.
98.
99. int main()
100. {
101. Figuras *arreglobj[5];
102.
103. Rectangulo Rec1(15,15);
104. Rectangulo Rec2(20,20);
105. Triangulo Tri1(3,5);
106. Triangulo Tri2(2,6);
107. Triangulo Tri3(5,5);
108.
109. arreglobj[0]=&Rec1;
110. arreglobj[1]=&Rec2;
111. arreglobj[2]=&Tri1;
112. arreglobj[3]=&Tri2;
113. arreglobj[4]=&Tri3;
114.
115. for(int i=0;i<5;i++)
116. {
117. arreglobj[i]-> CalcularArea();
118. arreglobj[i]-> Identificar();
119. arreglobj[i]-> DibujarFigura();
120. cout<<"----------------------"<<endl;
121. }
122. cout<<endl<<"Fin de la demostracion "<<endl;
123.
124. getch();
125. return 0;
126. }
Ejercicio 1:
1. #include<iostream>
2. #include<conio.h>
3. class Figuras
4. {
5. protected:
6. char identificar[25];
7. float area;
8. public:
9. virtual void CalcularArea();
10. virtual void DibujarFigura();
11. virtual void Identificar();
12. };
13. void Figuras::CalcularArea()
14. {
15. }
16. void Figuras::DibujarFigura()
17. {
18. cout<<"No hay dibujo disponible.."<<endl;
19. }
20. void Figuras::Identificar()
21. {
22. cout<<endl<<"Nombre Figura: "<<identificar<<endl;
23. cout<<"El area es :"<<area<<endl;
24. }
25. class Rectangulo:public Figuras
26. {
27. protected:
28. float base;
29. float altura;
30. public:
31. Rectangulo(float b,float a);
32. void CalcularArea();
33. void DibujarFigura();
34. void Identificar();
35. };
36. Rectangulo::Rectangulo(float b,float a)
37. {
38. base=b;
39. altura=a;
40. strcpy(identificar, "Rectangulo");
41. }
42. void Rectangulo::CalcularArea()
43. {
44. area=(base*altura);
45. }
46. void Rectangulo::DibujarFigura()
47. {
48. cout<<endl;
49. cout<<"**********"<<endl;
50. cout<<"* *"<<endl;
51. cout<<"* * altura ="<<altura<<endl;
52. cout<<"* *"<<endl;
53. cout<<"**********"<<endl;
54. cout<<"Base = "<<base<<endl;
55. }
56. void Rectangulo::Identificar()
57. {
58. Figuras::Identificar();
59. cout<<endl<<"Sus datos son:"<<endl;
60. }
61. class Triangulo:public Figuras
62. {
63. protected:
64. float base;
65. float altura;
66. public:
67. Triangulo(float b,float a);
68. void CalcularArea();
69. void DibujarFigura();
70. void Identificar();
71. };
72. Triangulo::Triangulo(float b,float a)
73. {
74. base=b;
75. altura=a;
76. strcpy(identificar, "Triangulo" );
77. }
78. void Triangulo::CalcularArea()
79. {
80. area=(base*altura)/2;
81. }
82. void Triangulo::DibujarFigura()
83. {
84. cout<<endl;
85. cout<<" ** "<<endl;
86. cout<<" * *"<<endl;
87. cout<<" * * altura ="<<altura<<endl;
88. cout<<"* *"<<endl;
89. cout<<"*********"<<endl;
90. cout<<"Base = "<<base<<endl;
91. }
92. void Triangulo::Identificar()
93. {
94. Figuras::Identificar();
95. cout<<endl<<"Sus datos son:"<<endl<<endl;;
96. }
97.
98. class Rombo:public Figuras
99. {
100. protected:
101. float base;
102. float altura;
103. public:
104. Rombo(float b,float a);
105. void CalcularArea();
106. void DibujarFigura();
107. void Identificar();
108. };
109. Rombo::Rombo(float b,float a)
110. {
111. base=b;
112. altura=a;
113. strcpy(identificar, "Rombo" );
114. }
115. void Rombo::CalcularArea()
116. {
117. area=(base*altura)/2;
118. }
119. void Rombo::DibujarFigura()
120. {
121. cout<<endl;
122. cout<<" ** "<<endl;
123. cout<<" * *"<<endl;
124. cout<<" * * "<<endl;
125. cout<<"********"<<"Diagonal menor = "<<altura<<endl;
126. cout<<" * *"<<endl;
127. cout<<" * *"<<endl;
128. cout<<" **"<<endl;
129. cout<<"Diagonal mayor = "<<base<<endl;
130. }
131. void Rombo::Identificar()
132. {
133. Figuras::Identificar();
134. cout<<endl<<"Sus datos son:"<<endl<<endl;;
135. }
136.
137. void main(void)
138. {
139. Figuras *arreglobj[3];
140.
141. Rectangulo Rec(15,15);
142. Triangulo Tri(3,5);
143. Rombo Rom(6,2);
144.
145. arreglobj[0]=&Rec;
146. arreglobj[1]=&Tri;
147. arreglobj[2]=&Rom;
148.
149.
150. for(int i=0;i<3;i++)
151. {
152. arreglobj[i]-> CalcularArea();
153. arreglobj[i]-> Identificar();
154. arreglobj[i]-> DibujarFigura();
155. cout<<"----------------------"<<endl;
156. }
157. cout<<endl<<"Fin de la demostracion "<<endl;
158.
159. getch();}

Ejecución
Ejercicio 2:

Código en C++
1. #include <iostream>
2. #include <conio.h>
3. #include <stdio.h>
4. class biblioteca
5. {
6. protected:
7. int paginas;
8. char nombre[40];
9. char autor[20];
10. char editorial[20];
11. public:
12. virtual void leerdatos();
13. virtual void imprimirdatos();
14. };
15. class libros:public biblioteca
16. {
17. private:
18. int paginas;
19. char nombre[40];
20. char autor[20];
21. char editorial[20];
22. int year;
23. public:
24. void leerdatos();
25. void imprimirdatos();
26. };
27. void libros::leerdatos()
28. {
29. cout<<"Ingrese nombre del libro :"<<endl;
30. gets(nombre);
31. cout<<"Ingrese el numero de paginas : ";
32. cin>>paginas;
33. cout<<"Ingrese el autor :"<<endl;
34. gets(autor);
35. cout<<"Ingrese la editorial :"<<endl;
36. gets(editorial);
37. cout<<"Ingrese a\xa4o de publicacion :"<<endl;
38. cin>>year;
39. clrscr();
40. }
41. void libros::imprimirdatos()
42. {
43. cout<<"Nombre del libro : "<<nombre<<endl;
44. cout<<"Numero de paginas : "<<paginas<<endl;
45. cout<<"Nombre del autor : "<<autor<<endl;
46. cout<<"Editorial :"<<editorial<<endl;
47. cout<<"A\xa4o de publicacion : "<<year<<endl;
48. }
49. class revistas:public biblioteca
50. {
51. private:
52. int paginas;
53. char nombre[40];
54. char editorial[20];
55. int year;
56. public:
57. void leerdatos();
58. void imprimirdatos();
59. };
60. void revistas::leerdatos()
61. {
62. cout<<"Ingrese nombre de la revista :"<<endl;
63. gets(nombre);
64. cout<<"Ingrese el numero de paginas : ";
65. cin>>paginas;
66. cout<<"Ingrese la editorial :"<<endl;
67. gets(editorial);
68. cout<<"Ingrese fecha de publicacion :"<<endl;
69. cin>>year;
70. clrscr();
71. }
72. void revistas::imprimirdatos()
73. {
74. cout<<"Nombre de la revista : "<<nombre<<endl;
75. cout<<"Numero de paginas : "<<paginas<<endl;
76. cout<<"Editorial :"<<editorial<<endl;
77. cout<<"Fecha de publicacion : "<<year<<endl;
78. }
79. class articulos:public biblioteca
80. {
81. private:
82. int paginas;
83. char nombre[40];
84. char autor[20];
85. int year;
86. public:
87. void leerdatos();
88. void imprimirdatos();
89. };
90. void articulos::leerdatos()
91. {
92. cout<<"Ingrese nombre del articulo :"<<endl;
93. gets(nombre);
94. cout<<"Ingrese el numero de paginas : ";
95. cin>>paginas;
96. cout<<"Ingrese el autor :"<<endl;
97. gets(autor);
98. cout<<"Ingrese a\xa4o de publicacion :"<<endl;
99. cin>>year;
100. clrscr();
101. }
102. void articulos::imprimirdatos()
103. {
104. cout<<"Nombre del articulo : "<<nombre<<endl;
105. cout<<"Numero de paginas : "<<paginas<<endl;
106. cout<<"Nombre del autor : "<<autor<<endl;
107. cout<<"A\xa4o de publicacion : "<<year<<endl;
108. }
109. void main(void)
110. {
111. libros a1;
112. revistas a2;
113. articulos a3;
114. int op,op1,op2;
115. do{
116. cout<<"Seleccione una opcion :"<<endl;
117. cout<<" 1. Ingresar libro, revista o articulo "<<endl;
118. cout<<" 2. Visualizar libro, revista o articulo "<<endl;
119. cout<<" 3. Salir del programa "<<endl;
120. cin>>op;
121. switch(op)
122. {
123. case 1:
124. cout<<" 1. Libro"<<endl;
125. cout<<" 2. Revista"<<endl;
126. cout<<" 3. Articulo"<<endl;
127. cin>>op1;
128. switch(op1)
129. {
130. case 1:
131. a1.leerdatos();
132. break;
133.
134. case 2:
135. a2.leerdatos();
136. break;
137.
138. case 3:
139. a3.leerdatos();
140. break;
141.
142. default:
143. break;
144. }
145. break;
146.
147. case 2:
148. cout<<"Visualizar : "<<endl;
149. cout<<" 1. Libro"<<endl;
150. cout<<" 2. Revista"<<endl;
151. cout<<" 3. Articulo"<<endl;
152. cin>>op2;
153. switch(op2)
154. {
155. case 1:
156. a1.imprimirdatos();
157. break;
158.
159. case 2:
160. a2.imprimirdatos();
161. break;
162.
163. case 3:
164. a3.imprimirdatos();
165. break;
166.
167. default:
168. break;
169. }
170. break;
171. default:
172. break;
173. }
174. }while(op!=3);
175. getch();}
Ejercicio Complementario:

Código en C++
1. #include <iostream>
2. #include <conio>
3. #include <stdio.h>
4. #include <math.h>
5. class figura
6. {
7. protected:
8. float area;
9. float base;
10. float perimetro;
11. float altura;
12. public:
13. figura(){};
14. virtual void CalcularArea();
15. virtual void CalcularPerimetro();
16. };
17. class triangulo:public figura
18. {
19. protected:
20. float area;
21. float Perimetro;
22. float base;
23. float altura;
24. public:
25. triangulo(){};
26. void CalcularArea();
27. void CalcularPerimetro();
28. };
29. class equilatero:public triangulo
30. {
31. protected:
32. float lado;
33. float area;
34. float perimetro;
35. public:
36. void CalcularArea();
37. void CalcularPerimetro();
38. };
39. void equilatero::CalcularArea()
40. {
41. cout<<"Ingrese la medida del lado "<<endl;
42. cin>>lado;
43. area=(sqrt(3)/4)*lado;
44. cout<<"El area del triangulo equilatero es "<<area;
45. clrscr();
46. }
47. void equilatero::CalcularPerimetro()
48. {
49. cout<<"Ingrese la medida del lado "<<endl;
50. cin>>lado;
51. perimetro=lado*3;
52. cout<<"El perimetro del Triangulo Equilatero es : "<<perimetro<<endl;
53. }
54. class trectangulo:public triangulo
55. {
56. protected:
57. float area;
58. float perimetro;
59. float base;
60. float cat1,hip;
61. public:
62. void CalcularArea();
63. void CalcularPerimetro();
64. };
65. void trectangulo::CalcularArea()
66. {
67. cout<<"Ingrese la medida de la base : ";
68. cin>>base;
69. cout<<"Ingrese la medida de la altura : ";
70. cin>>altura;
71. area=(base*altura)/2;
72. cout<<"El area del triangulo rectangulo es : "<<area<<endl;
73. }
74. void trectangulo::CalcularPerimetro()
75. {
76. cout<<"Ingrese la medida del cateto 1 : ";
77. cin>>cat1;
78. cout<<"Ingrese la medida del cateto 2 : ";
79. cin>>base;
80. cout<<"Ingrese la medida de la hipotenusa : ";
81. cin>>hip;
82. }
83. class rectangulo:public figura
84. {
85. protected:
86. float area;
87. float perimetro;
88. float base;
89. float altura;
90. public:
91. void CalcularArea();
92. void CalcularPerimetro();
93. };
94. void rectangulo::CalcularArea()
95. {
96. cout<<"Ingrese la medida de la base : ";
97. cin>>base;
98. cout<<"Ingrese la medida de la altura : ";
99. cin>>altura;
100. area=(base*altura)/2;
101. cout<<"El area del rectangulo es : "<<area<<endl;
102. }
103. void rectangulo::CalcularPerimetro()
104. {
105. cout<<"Ingrese la medida de la base : ";
106. cin>>base;
107. cout<<"Ingrese la medida de la altura : ";
108. cin>>altura;
109. perimetro=2*base+2*altura;
110. cout<<"El perimetro del rectangulo es :"<<perimetro<<endl;
111. }
112. class cuadrado:public rectangulo
113. {
114. protected:
115. float area;
116. float perimetro;
117. float lado;
118. public:
119. void CalcularArea();
120. void CalcularPerimetro();
121. };
122. void cuadrado::CalcularArea()
123. {
124. cout<<"Ingrese la medida del lado :";
125. cin>>lado;
126. area=lado*lado;
127. cout<<"El area del cuadrado es : "<<area<<endl;
128. }
129. void cuadrado::CalcularPerimetro()
130. {
131. cout<<"Ingrese la medida del lado : ";
132. cin>>lado;
133. perimetro=4*lado;
134. cout<<"El perimetro del cuadrado es : "<<perimetro<<endl;
135. }
136. void main(void)
137. {
138. equilatero equi;
139. trectangulo trec;
140. rectangulo rect;
141. cuadrado cua;
142. int op,op1,op2,op3,op4,op5;
143. do
144. {
145. cout<<" 1. Seleccione una figura."<<endl;
146. cout<<" 2. Salir del programa."<<endl;
147. cin>>op;
148. switch(op)
149. {
150. case 1:
151. cout<<" 1. Triangulo "<<endl;
152. cout<<" 2. Cuadrilatero"<<endl;
153. cin>>op1;
154. switch(op1)
155. {
156. case 1:
157. cout<<" 1. Triangulo equilatero"<<endl;
158. cout<<" 2. Triangulo rectangulo"<<endl;
159. cin>>op2;
160. switch(op2)
161. {
162. case 1:
163. cout<<" 1. Calcular area "<<endl;
164. cout<<" 2. Calcular perimetro"<<endl;
165. cin>>op3;
166. switch(op3)
167. {
168. case 1:
169. equi.CalcularArea();
170. break;
171.
172. case 2:
173. equi.CalcularPerimetro();
174. break;
175.
176. default:
177. break;
178. }
179. break;
180.
181. case 2:
182. cout<<" 1. Calcular area "<<endl;
183. cout<<" 2. Calcular perimetro"<<endl;
184. cin>>op3;
185. switch(op3)
186. {
187. case 1:
188. trec.CalcularArea();
189. break;
190.
191. case 2:
192. trec.CalcularPerimetro();
193. break;
194.
195. default:
196. break;
197. }
198. break;
199.
200. default:
201. break;
202. }
203. break;
204.
205. case 2:
206. cout<<" 1.Rectangulo"<<endl;
207. cout<<" 2.Cuadrado"<<endl;
208. cin>>op4;
209. switch(op4)
210. {
211. case 1:
212. cout<<" 1. Calcular area "<<endl;
213. cout<<" 2. Calcular perimetro"<<endl;
214. cin>>op5;
215. switch(op5)
216. {
217. case 1:
218. rect.CalcularArea();
219. break;
220.
221. case 2:
222. rect.CalcularPerimetro();
223. break;
224.
225. default:
226. break;
227. }
228. break;
229.
230. case 2:
231. cout<<" 1. Calcular area "<<endl;
232. cout<<" 2. Calcular perimetro"<<endl;
233. cin>>op5;
234. switch(op5)
235. {
236. case 1:
237. cua.CalcularArea();
238. break;
239.
240. case 2:
241. cua.CalcularPerimetro();
242. break;
243.
244. default:
245. break;
246. }
247. break;
248. }
249. break;
250.
251. default:
252. break;
253. }
254.
255. default:
256. break;
257. }
258. }while(op!=2);
259. getch();}
Ejecución del programa:

You might also like