0

I have written this for my math class, as it saved me an accumulated time of three hours over a week of homework that involved the quads.
I a posting it here for anyone who wants to use, modify or otherwise use to go ahead and do so. Standard Quadratic Form applies here, Ax2 * Bx * C, and sometimes Ax2 * Bx = C, etc.

Thanks, And enjoy,

-Stev Täal

#include <iostream>
#include <windows.h>
#include <math.h>

using namespace std;

int main()
{
    system("title Quadratic Solver");
    system("color 1F");
    long double a, b, c, posans, negans;
    begin:
    cout << "Enter a: ";
    cin >> a;
    cout << "Enter b: " ;
    cin >> b;
    cout << "Enter c: ";
    cin >> c;
    cout << "b squared is " << b * b << ",\n4ac evaluates to " << (4 * (a) * (c)) << ",\nAnd the sqaure root of b squared - 4ac is " << sqrt((b * b) - 4 * (a * c)) << ".\n2a evaluates to " << 2 * a << ". Thus, we get:\n"; 
    //
    posans = ((b * -1) + sqrt((b * b) - (4 * (a) * (c)))) / (2 * a);
    /*
    -----------------------------------------------------------------------|
    */
    negans = ((b * -1) - sqrt((b * b) - (4 * (a) * (c)))) / (2 * a);    
    //    
    cout << "\n                   _____________\n";
    {
    cout << "As X =    " << (b * -1) << " +/- \\/" << (b * b) << " + " << (4 * (a) * (c));
}
    else
    {
    cout << "As X =    " << (b * -1) << " +/- \\/" << (b * b) << " + " << (4 * (a) * (c)) * -1 << "";
}    
    cout << "\n       ------------------------\n";
    cout << "                   " << 2 * a << endl << endl << endl;
    cout << "   X =          " << (b * -1) << " +/- " << sqrt((b * b) - (4 * (a) * (c)));
    cout << "\n       ------------------------\n";
    cout << "                   " << 2 * a << endl << endl << endl;
    cout << "\nX can be either " << posans << " (+) or " << negans << " (-)";
    cout << endl << "Again or exit? (A/E) ";
    while (!GetAsyncKeyState(0x41))
    {
          Sleep(10);
          if (GetAsyncKeyState(0x45))
          {
                                     return 0;
                                     }
          
          }
    system("cls");
    FreeConsole();
    AllocConsole();
    system("color 1F");
    system("title Quadratic Solver ");
    goto begin;
    system("pause>nul");
}
2
Contributors
6
Replies
8
Views
7 Years
Discussion Span
Last Post by anuragcoder
0

says error:

expected primary expression before else
expected ; before else

i believe you have a problem with braces.

0

Try this instead, as I've updated the algorithms for solving to be more accurate (nesting issues before) and added new inserts:

#include <iostream>
#include <windows.h>
#include <math.h>

using namespace std;

int main()
{
    system("title Quadratic Solver - By Stephen Talarman");
    int i = 4; //replace to 6
    while (i > 0)
    {
          if (i == 0, 2, 4,6)
          {
                system("color 3A");
                cout << "\n\n\n\n\n\n\n\n\n\n\t\t\t        Quad Solver";
    cout << "\n\t\t\t   By: Stephen Talarman";
    Sleep(250);
    system("cls");
 i--; 
             }
             if (i == 1, 3, 5) {
                  system("color B1");
                  cout << "\n\n\n\n\n\n\n\n\n\n\t\t\t        Quad Solver";
    cout << "\n\t\t\t   By: Stephen Talarman";
    Sleep(250);
    system("cls");
 i--; 
                  }  
}
system("color 1F");
    long double a, b, c, posans, negans;
    begin:
    cout << "Enter a: ";
    cin >> a;
    cout << "Enter b: " ;
    cin >> b;
    cout << "Enter c: ";
    cin >> c;
    cout << "b squared is " << b * b << ",\n4ac evaluates to " << ((4) * (a) * (c)) << ",\nAnd the sqaure root of b squared - 4ac is " << sqrt((b * b) - 4 * (a * c)) << ".\n2a evaluates to " << 2 * a << ". Thus, we get:\n"; 
    //
    posans = ((b * -1) + sqrt((b * b) - ((4) * (a) * (c)))) / (2 * a);
    /*
    -----------------------------------------------------------------------|
    */
    negans = ((b * -1) - sqrt((b * b) - (4 * (a) * (c)))) / (2 * a); 
  
    //    
    cout << "\n                   ____________\n"; //fix sqrt() problems under the graphical radical
    if ( 4 * (a * c) > 0)
    {
    cout << "As X =    " << (b * -1) << " +/- \\/" << (b * b) << " + " << (4 * (a) * (c));
}
    else
    {
    cout << "As X =    " << (b * -1) << " +/- \\/" << (b * b) << " + " << (4 * (a) * (c)) * -1 << "";
}    
    cout << "\n       ------------------------\n";
    cout << "                   " << 2 * a << endl << endl << endl;
    cout << "   X =          " << (b * -1) << " +/- " << sqrt((b * b) - (4 * (a) * (c)));
    cout << "\n       ------------------------\n";
    cout << "                   " << 2 * a << endl << endl << endl;
    cout << "\n   X =             " << (b * -1) << "       " << sqrt((b * b) - (4 * (a) * (c))) << "         " << (b * -1) << "       " << sqrt((b * b) - (4 * (a) * (c)));
    cout << "\n                 ----- + -----  or  ----- - -----";
    cout << "\n                   " << 2 * a << "       " << 2 * a << "          " << 2 * a << "       " << 2 * a;
    cout << "\n\n                   " << (b * -1) + sqrt((b * b) - (4 * (a) * (c))) << "       " << (b * -1) - sqrt((b * b) - (4 * (a) * (c)));
    cout << "\n             =>  ----- or -----";
    cout << "\n                   " << 2 * a << "        " << 2 * a;
    cout << "\n\n----------------------------------------";
    cout << "\n   X =             " << posans << " (+) or " << negans << " (-)";
    cout << "\n----------------------------------------\n";
    cout << endl << "Again or exit? (A/E) ";
    while (!GetAsyncKeyState(0x41))
    {
          Sleep(10);
          if (GetAsyncKeyState(0x45))
          {
                                     return 0;
                                     }
          
          }
    system("cls");
    FreeConsole();
    AllocConsole();
    system("color 1F");
    system("title Quadratic Solver - By Stephen Talarman");
    goto begin;
    system("pause>nul");
}
0

Nice work........
Appears a little too confusing but at the end
no errors....

Thanks a lot for the code.

0

at which part are you referring to with the difficulties? and feel free to change it to your comforts.

Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.