diff options
feat(Week04): Add exercises and solutions
1 files changed, 25 insertions, 0 deletions
| -rw-r--r-- | Week04/Exercise04.cpp | 25 |
diff --git a/Week04/Exercise04.cpp b/Week04/Exercise04.cpp new file mode 100644 index 0000000..a64f1f2 --- /dev/null +++ b/Week04/Exercise04.cpp @@ -0,0 +1,25 @@ +#include <iostream> +#include <cmath> + +int main() { + float a, b, c; + std::cin >> a >> b >> c; + + float determinant = b * b - 4.0 * a * c; + // Тези сравнения колко са коректни така? + // Могат ли да се породят проблеми заради точност? + if (determinant < 0.0) { + std::cout << "No real roots"; + } + else if (determinant == 0.0) { + float x = -b / (2 * a); + std::cout << x; + } + else { + float x1 = (-b + sqrt(determinant)) / (2 * a); + float x2 = (-b - sqrt(determinant)) / (2 * a); + std::cout << x1 << ' ' << x2; + } + + return 0; +} |
