Se citesc coeficienții ecuaţiei carteziene generale a unei drepte. Să se precizeze cum este dreapta: oarecare, prima bisectoare, a doua bisectoare, trece prin origine, paralelă cu Ox, paralelă cu Oy, axa Ox sau axa Oy. 8
#include <iostream>
using namespace std;
int main() {
int a, b, c;
cout << „Introduceti coeficientii a, b si c: „;
cin >> a >> b >> c;
if (a != 0 && b != 0) {
cout << „Dreapta este oarecare.”;
}
else if (a == 0 && b != 0) {
cout << „Dreapta este paralela cu axa Oy.”;
}
else if (a != 0 && b == 0) {
cout << „Dreapta este paralela cu axa Ox.”;
}
else if (a == b && a == 1 && b == 1) {
cout << „Dreapta este prima bisectoare.”;
}
else if (a == b && a == -1 && b == -1) {
cout << „Dreapta este a doua bisectoare.”;
}
else if (c == 0) {
cout << „Dreapta trece prin origine.”;
}
else {
cout << „Nu s-a putut determina tipul de dreapta.”;
}
return 0;
}
Pentru a identifica cum este dreapta, trebuie să analizăm coeficienții ecuației carteziene generale a dreptei. Ecuația carteziene generală a unei drepte este de forma: ax + by + c = 0.
- Dacă ambele coeficienți a și b sunt nenuli, atunci dreapta este oarecare.
- Dacă avem a=0 sau b=0, atunci dreapta este paralelă cu una din coordonatele Ox sau Oy.
- Dacă a=0, dreapta este paralelă cu Oy.
- Dacă b=0, dreapta este paralelă cu Ox.
- Dacă avem a=b, atunci dreapta este bisectoarea unghiului dintre Ox și Oy.
- Dacă a=b=1, dreapta este prima bisectoare.
- Dacă a=b=-1, dreapta este a doua bisectoare.
- Dacă c=0, dreapta trece prin origine.
Astfel, putem scrie un program în C++ care citește coeficienții a, b și c și determină tipul dreptei:
Notă: În acest program se folosește instrucțiunea using namespace std;
pentru a permite utilizarea operatorului <<
și >>
direct, fără prefixul std::
. Acest lucru este considerat o practică nerecomandată în producție, dar este utilizat aici în scop educațional