• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadanie c++ studia

0 głosów
85 wizyt
pytanie zadane 4 dni temu w C i C++ przez kuba1245677 Obywatel (1,080 p.)

Mam problem , potrzebuje zadania na studia, posiadam taka treść i napisalem troche kodu, ale na tym moje umiejetnosci sie zatrzymały, płace w złocie, blagam o pomoc:

 

#include <iostream>
#define LICZBA_ELEMENTOW 5

using namespace std;

class element {
  protected:
    double prad;
    double napiecie;
    double moc;
    double czestotliwosc;
    std::string nazwa;
  public:
    virtual ~element(){};
    element() {nazwa = "element"; czestotliwosc = 1.0; napiecie = prad = moc = 0.0;}
    element(const std::string arg) {nazwa = arg; napiecie = czestotliwosc = 1.0; prad = moc = 0.0;}
    virtual void wymuszenieU(double) = 0;
    friend void obwod(element*, element*);
};

void obwod(element *e1, element *e2) {
  bool pradMatch = false;
  bool napiecieMatch = false;
  if (e1->prad == e2->prad) {
    pradMatch = true;
  }
  if (e1->napiecie == e2->napiecie) {
    napiecieMatch = true;
  }
  if ((pradMatch && !napiecieMatch) || (!pradMatch && napiecieMatch)) {
    //std::string matchType = (pradMatch)?"prad":"napiecie";
    std::string matchType;
    if (pradMatch) {
      matchType = "prad";
    } else {
      matchType = "napiecie";
    }

    cout << "elementy: " << e1->nazwa.c_str() << " oraz: " << e2->nazwa.c_str() << " maja taki sam: " << matchType.c_str() << endl;
  } else {
    if (pradMatch && napiecieMatch) {
      cout << "elementy: " << e1->nazwa.c_str() << " oraz: " << e2->nazwa.c_str() << " sa nieokreslone." << endl;
    } else {
      cout << "elementy: " << e1->nazwa.c_str() << " oraz: " << e2->nazwa.c_str() << " sa nie polaczone." << endl;
    }
  }
}

class cewka : public element {
  protected:
    double L;
  public:
    cewka() {nazwa = "cewka"; L = 1.0;}
    cewka(const std::string arg) {nazwa = arg; L = 1.0;}
    cewka(const std::string arg, double argL) {nazwa = arg; L = argL;}
    void wymuszenieU(double);
};

void cewka::wymuszenieU(double u) {
  napiecie = u;
  if (czestotliwosc > 0.0) {
    prad = u/(6.28*czestotliwosc*L);
  }
}

int main() {

  element* tab[LICZBA_ELEMENTOW];
  for (int i=0; i<(LICZBA_ELEMENTOW); i++) {
    tab[0] = new cewka("cewka1");
  }
  tab[0] = new cewka("cewka1");
  tab[1] = new cewka("cewka2", 3.0);
  tab[2] = new cewka("cewka3");
  tab[3] = new cewka("cewka4", 3.0);
  tab[4] = new cewka("cewka5", 3.0);
  tab[0]->wymuszenieU(5);
  tab[1]->wymuszenieU(5);
  for (int i=0; i<(LICZBA_ELEMENTOW-1); i++) {
    for (int j=i+1; j<LICZBA_ELEMENTOW; j++) {
      obwod(tab[i], tab[j]);
    }
  }
  for (int i=0; i<LICZBA_ELEMENTOW; i++) {
    delete tab[i];
  }
  return 0;
}

 

1
komentarz 4 dni temu przez j23 Mędrzec (169,260 p.)
A z czym konkretnie masz problem?
komentarz 3 dni temu przez kuba1245677 Obywatel (1,080 p.)
Potrzebuje dokonczyć reszte podpunktów ze screena

1 odpowiedź

0 głosów
odpowiedź 4 dni temu przez Hesoyam Użytkownik (540 p.)
Jak wyślesz mi więcej zadań mogę pomóc w miarę możliwości :P

Podobne pytania

0 głosów
0 odpowiedzi 76 wizyt
pytanie zadane 17 grudnia 2018 w SQL, bazy danych przez Squbany2211 Nowicjusz (160 p.)
0 głosów
0 odpowiedzi 93 wizyt
pytanie zadane 7 czerwca 2018 w Matematyka, fizyka, logika przez olcivks Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 154 wizyt
pytanie zadane 27 kwietnia 2017 w Matematyka, fizyka, logika przez Kapseel Nowicjusz (140 p.)

86,400 zapytań

135,161 odpowiedzi

300,250 komentarzy

57,163 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...