Advertisement
smgr

Untitled

Mar 8th, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.35 KB | None | 0 0
  1. /**
  2.  * Ohmikus ellenállást megvalósitó osztály kipróbálása
  3.  */
  4. #include "resistor.h"
  5.  
  6. /// defR statikus adattag definiálása
  7. double Resistor::defR = 112000.0;
  8.  
  9. /// Kontstruktor.
  10. /// Alapértelmezett értéket (defR) kap
  11. Resistor::Resistor() {
  12.     this->R = defR;
  13. }
  14.  
  15. /// Kontstruktor.
  16. /// @param r - ellenállás értéke [ohm]
  17. Resistor::Resistor(double r) {
  18.     this->R = r;
  19. }
  20.  
  21. /// Default ellenállásérték beállítása
  22. /// @param r - ellenállás értéke [ohm]
  23. void Resistor::setDef(double r) {
  24.     defR = r;
  25. }
  26.  
  27. /// Két ellenállás soros kapcsolása.
  28. /// @param r - ellenállás
  29. /// @return  - eredő ellenállás
  30. Resistor Resistor::operator+(const Resistor& r) const {
  31.     Resistor resistance;
  32.     resistance.R = this->R + r.R;
  33.     return resistance;
  34. }
  35.  
  36. /// Két ellenállás párhuzamos kapcsolása.
  37. /// @param r - ellenállás
  38. /// @return  - eredő ellenállás
  39. Resistor Resistor::operator%(const Resistor& r) const {
  40.     Resistor resistance;
  41.     resistance.R = 1 / ((1 / this->R) + (1 / r.R));
  42.     return resistance;
  43. }
  44.  
  45. /// Többszörös: n darab egyforma r ellenállás összege (soros kapcsolása).
  46. /// @param n - darabszám
  47. /// @param r - ellenállás
  48. /// @return  - eredő ellenállás
  49. Resistor operator*(int n, const Resistor& r) {
  50.     if (n < 1) {
  51.         throw "ILE2S9";
  52.     }
  53.     Resistor resistance(n * r.getR());
  54.     return resistance;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement