Per declarar una variable de tipus enter utilitzem , mentre que per declarar un nombre decimal fem servir . Les funcions en C++ es defineixen amb la paraula clau seguit del tipus de retorn. Per llegir dades de l'usuari s'utilitza , i per mostrar dades s'utilitza . Els bucles en C++ inclouen per repetir un bloc de codi fins que una condició sigui falsa, i que s'executa almenys una vegada. Per definir una classe fem servir la paraula clau . Per crear un objecte d'una classe utilitzem seguit del nom de la classe. Per sobrecarregar una funció, simplement definim diverses versions de la mateixa funció amb diferent o diferent . Per gestionar memòria dinàmica utilitzem per reservar memòria i per alliberar-la. Les biblioteques estàndard es poden incloure amb la directiva . Els comentaris d'una sola línia s'escriuen amb i els comentaris de múltiples línies es delimiten amb . Per utilitzar l'espai de noms estàndard, emprem . Per controlar les estructures de decisió, utilitzem , , i .
#include <iostream> // answer21
#include <cmath> // answer22
#include <complex> // answer23
using namespace std; // answer24
void solveQuadratic(double a, double b, double c) {
double discriminant = b*b - 4*a*c; // answer25
complex<double> root1, root2; // answer26
if (discriminant >= 0) {
root1 = (-b + sqrt(discriminant)) / (2*a); // answer27
root2 = (-b - sqrt(discriminant)) / (2*a); // answer28
} else {
root1 = complex<double>(-b / (2*a), sqrt(-discriminant) / (2*a)); // answer29
root2 = complex(-b / (2*a), -sqrt(-discriminant) / (2*a)); // answer30
}
cout << "Les arrels de l'equació són: " << root1 << " i " << root2 << endl; // answer31
}
int main() {
double a, b, c;
cout << "Introdueix els coeficients a, b i c: "; // answer32
cin >> a >> b >> c; // answer33
if (a == 0) {
cout << "El coeficient 'a' no pot ser zero." << endl; // answer34
} else {
solveQuadratic(a, b, c); // answer35
}
return 0; // answer36
}