the program should this: 1-ask series , parallel resistance (different classes) 2-pass eq_r_series , eq_r_paralel values(after calculated) equivalent resistance calculate eq_r_total 3-display eq_r_total.
so need main function , 3 classes(1 of classes needs info other 2).
class serie { private: int i, n = 4; float r_eq_s; float r[4]; public: float serie() { (int = 0; < n; i++) { cout << "resistence " << + 1 << " "; cin >> r[i]; r_eq_s = r_eq_s + r[i]; } return r_eq_s; } }; int main() { serie s; s.serie(); }
so have program no errors (doesn't mean theres nothing wrong), runs , asks me introduce 1st resistence after doesn't continue cycle.
(i "just" need "link" class main , principal class.)
so basic approach , works limited, can change number of resistance 1 simple editing. guys if point mistakes ;) @ least think i'm learning
class series { private: float r1, r2, r3, r4; public: float r_eq_s; float series() { cout << "resistance1= "; cin >> r1; cout << "resistance2= "; cin >> r2; cout << "resistance3= "; cin >> r3; cout << "resistance4= "; cin >> r4; r_eq_s = r1 + r2 + r3 + r4; return r_eq_s; } }; class parallel{ private: float r5, r6; public: float r_eq_p; float parallel(){ cout << "\nresistance5= "; cin >> r5; cout << "resistance6= "; cin >> r6; r_eq_p = (r5*r6) / (r5 + r6); return r_eq_p; } }; class equivalent{ private: float r_eq; public: float r_eq() { series s; parallel p; r_eq = s.series()+ p.parallel(); return r_eq; } }; int main() { equivalent r; cout<<"\n\nr_eq= "<<r.r_eq()<<endl; }
@tyler has pointed in comment. in class definition r
declared of type int
. then, in expression r[i]
, i
should pointer (this usual c/c++ symmetry: a[i]
same *(a + i)
1 of them should dereferenceable, other 1 being number, not matter 1 which). i
again int
nevertheless. second, don't quite how can code compile, serie
private method yet call outside of class's context.