¿por qué me aparecen números diferentes a los asignados?
Publicado por Estudiante (1 intervención) el 07/09/2020 22:22:43
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//HOLA, SOY ESTUDIANTE Y APENAS ESTOY APRENDIENDO, ME LO DEJARON EN LA ESCUELA. ESTE CÓDIGO TIENE TRES CLASES, ALGUNOS DATOS SON PRIVADOS Y COMO RESULTADO DEBE ARROJARME UNA SUMA. PERO AL COMPILAR, ME APARECEN OTROS NÚMEROS QUE YO NO ASIGNÉ. TENGO IDEA DE CUAL PUEDE SER EL ERROR PERO NO PUEDO CORREGIRLO AÚN. ESPERO QUE ALGUIEN ME PUEDA ORIENTAR, MUCHAS GRACIAS.
#include<iostream>
using namespace std;
class A
{
private:
int a;
public:
int asigna_a(int);
int obta ();
};
class B
{
private:
int b;
public:
int asigna_b(int);
int obtb ();
};
class C : public A, B
{
private:
int c;
public:
int suma(int, int);
void ver ();
};
int A::asigna_a(int x)
{ a=x; }
int A::obta()
{
return a;
}
int B::asigna_b(int y)
{ b=y;}
int B::obtb()
{
return b;
}
int C::suma(int,int)
{
c=obta()+obtb();
}
void C::ver()
{
cout<<"a: "<<obta()<<endl;
cout<<"b: "<<obtb()<<endl;
cout<<"Suma: "<<c<<endl;
}
int main ()
{
C obj1;
int x=5, y=2;
obj1.suma(x, y);
obj1.ver();
return 0;
}
Valora esta pregunta
0