#include#include using namespace std; enum yn {no, yes}; enum color {red, yellow, green, orange}; void out(enum yn x); char *c[] = { "red","yellow","green","orange" }; class fruit { public: enum yn annual; enum yn perennial; enum yn tree; enum yn tropical; enum color clr; char name[40]; }; class Apple : public fruit { enum yn cooking; enum yn crunchy; enum yn eating; public: void seta(char *n, enum color c, enum yn ck, enum yn crchy, enum yn e); void show(); }; class Orange : public fruit { enum yn juice; enum yn sour; enum yn eating; public: void seto(char *n, enum color c, enum yn j, enum yn sr, enum yn e); void show(); }; void Apple::seta(char *n, enum color c, enum yn ck, enum yn crchy, enum yn e) { strcpy(name, n); annual = no; perennial = yes; tree = yes; tropical = no; clr = c; cooking = ck; crunchy = crchy; eating = e; } void Orange::seto(char *n, enum color c, enum yn j, enum yn sr, enum yn e) { strcpy(name, n); annual = no; perennial = yes; tree = yes; tropical = yes; clr = c; juice = j; sour = sr; eating = e; } void Apple::show() { cout << name << "apple: " << "\n"; cout << "plant :"; out(annual); cout << "ta plant:"; out(perennial); cout << "tree:"; out(tree); cout << "nettai: "; out(tropical); cout << "color:" << c[clr] << "\n"; cout << "for cook" ; out(cooking); cout << "solid: "; out(crunchy); cout << "food: "; out(eating); cout << "\n"; } void Orange::show() { cout << name << "orange: " << "\n"; cout << "plant :"; out(annual); cout << "ta plant:"; out(perennial); cout << "tree:"; out(tree); cout << "nettai: "; out(tropical); cout << "color:" << c[clr] << "\n"; cout << "juice" ; out(juice); cout << "suppi: "; out(sour); cout << "food: "; out(eating); cout << "\n"; } void out(enum yn x) { if(x==no) cout << "no\n"; else cout << "yes\n"; } int main() { Apple a1, a2; Orange o1, o2; a1.seta("red delicious", red, no, yes, yes); a2.seta("jonasson", red, yes, no, yes); o1.seto("neble", orange, no, no, yes); o2.seto("ballensia", orange, yes, yes, no); a1.show(); a2.show(); o1.show(); o2.show(); return 0; }