Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
#include
#include
#include
using namespace std; void solveQuadratic(float a, float b, float c, float &x1, float &x2, short &type) { float delta = (b * b) - (4 * a * c); type = 0; x1 = x2 = 0; if (a == 0) { if (b == 0) { if (c == 0) { cout << "Równanie jest równaniem tożsamościowym; posiada nieskończenie wiele rozwiązań" << "\n"; type = 3; } else { cout << "Równanie nie posiada rozwiązania;" << "\n"; type = 4; } } else { cout << "Równanie jest równaniem liniowym; posiada rozwiązanie:" << "\n"; type = 2; x1 = -c/b; } return; } else if (delta < 0) { cout << "Brak pierwiastków w zbiorze liczb rzeczywistych; delta jest ujemna" << "\n"; type = 1; return; } else if (delta == 0) cout << "Równanie posiada pierwiastek podwójny:" << "\n"; else cout << "Równanie posiada pierwiastki:" << "\n"; x1 = (-b - sqrt(delta)) / (2 * a); x2 = (-b + sqrt(delta)) / (2 * a); } /* types: ## równanie kwadratowe: 0 - posiada pierwiastki / pierwiastek podwójny (4, 3, -1 / 1, 3, 2.25) 1 - brak pierwiastków (1, 2, 3.141593) ## równanie liniowe: 2 - posiada rozwiązanie (0, 5, 1.618034) ## inne 3 - równanie tożsamościowe (0, 0, 0) 4 - brak rozwiązań (0, 0, 2.718282) */ void readFromInput(float (&values)[3]) { bool correct; char prompt; for (int i = 0; i < 3; i ++) { prompt = ((i == 0) ? 'a' : ((i == 2) ? 'c' : 'b')); do { cout << prompt << ": "; cin >> values[i]; if (!cin) { cout << "): Takie równanie możesz sobie rozwiązać samemu – wpisz prawidłowe dane" << "\n"; correct = false; cin.clear(); } else correct = true; cin.ignore(numeric_limits
::max(), '\n'); } while (correct == false); } } int main() { float a, b, c, x1, x2, values[3]; short type; cout << "Wprowadź równanie w postaci ax\u00b2 + bx + c = 0:" << "\n"; readFromInput(values); cout << "\n"; solveQuadratic(values[0], values[1], values[2], x1, x2, type); switch (type) { case 1: case 4: cout << "???"; break; case 0: case 2: cout << "x\u2081 = " << (x1 == 0.0 ? abs(x1) : x1) << "\n"; if (type == 0) cout << "x\u2082 = " << x2 << endl; break; } cout << endl; return 0; }
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)