Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Napisać klasę RownanieKwadratowe. Klasa ma przechowywać współczynniki równania. Klasa ma posiadać metody:
- wpr_wsp(..........) - funkcje do wprowadzania współczynników równania
- oblicz_delta(.......) - funkcja zwracająca wartość delty dla podanych współczynników
- oblicz_pierwiastki(.....) - funkcja zwracająca pierwiastki równania kwadratowego
- Oraz funkcję zaprzyjaźnioną sprawdzającą czy dwa równania mają takie same współczynniki.
- */
- #include <cstdlib>
- #include <iostream>
- #include <math.h>
- using namespace std;
- class RownanieKwadratowe{
- private:
- float a, b, c;
- public:
- friend bool sprawdzWsp(RownanieKwadratowe x, RownanieKwadratowe y);
- void wpr_wsp(){
- cout << "a: "; cin >> this->a;
- cout << "b: "; cin >> this->b;
- cout << "c: "; cin >> this->c;
- }
- float oblicz_delta(){
- return (b * b) - (4*a*c);
- }
- float *oblicz_pierwiastki(){
- float * wyniki = new float[2];
- if(this->oblicz_delta() > 0){
- wyniki[0] = ((-1*b)-sqrt(this->oblicz_delta()))/(2*a);
- wyniki[1] = ((-1*b)+sqrt(this->oblicz_delta()))/(2*a);
- cout << wyniki[0] << ", " << wyniki[1] << endl;
- return wyniki;
- }
- else if(this->oblicz_delta() == 0){
- wyniki[0] = (-1*b)/2*a;
- cout << wyniki[0] << endl;
- return wyniki;
- }
- else if(this->oblicz_delta() < 0){
- cout << "Brak pierwiastkow" << endl;
- return NULL;
- }
- }
- };
- bool sprawdzWsp(RownanieKwadratowe x, RownanieKwadratowe y){
- if(x.a == y.a){
- if(x.b == y.b){
- if(x.c == y.c) return true;
- }
- }
- else return false;
- }
- int main() {
- RownanieKwadratowe x;
- x.wpr_wsp();
- cout << x.oblicz_pierwiastki() << endl;
- RownanieKwadratowe y;
- y.wpr_wsp();
- cout << y.oblicz_pierwiastki() << endl;
- cout << endl << "Czy pierwiastki maja takie same wspolczynniki? ";
- if(sprawdzWsp(x, y)) cout << "Tak";
- else cout << "Nie";
- return EXIT_SUCCESS;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement