Równanie kwadratowe z pętlą

0

Cześć
Potrzebuje pomocy , mam już równanie kwadratowe ale nie wiem jak zastosować w nim pętle dowhile aby zabezpieczyć "a" by nie było ujemne

Oto moje równanie.Prosze napiszcie co usunąc a co dodać

 #include <iostream>
 #include<cmath>
using namespace std;

int main ()
{
    int a;
    int b;
    int c;
     
     cout<<"ax*x+bx+c=0 \n";
      cout << "podaj a = "; cin >> a;
      cout << "podaj b = "; cin >> b;
      cout << "podaj c = "; cin >> c;

     int d = b*b-4*a*c;

     if (a !=0)
      {  
       if(d < 0)
        cout<<"Nie ma pierwiastkow \n";
       else 
        {
        if (d==0)
          {
            double x = -b/(2*a);
             cout << "Równanie ma jeden pierwiastek x = " << x << endl;
          } 
         else 
          { 
            double x1, x2;

                 cout<<"Rownanie ma dwa pierwiastki: \n";
                 x1=(-b-sqrt(d))/(2*a);
                 x2=(-b+sqrt(d))/(2*a);
                 cout<<"x1 = "<< x1 << endl;
                 cout<<"x2 = "<< x2 << endl;
          }
          }
        }
       else
        {
               cout << " Jest to rownanie liniowe\n";
              if (b != 0 )
                {
                    cout << "Posiada ono pierwiastek x = " << (double) -c/b << endl;
                 }
                 else
                      if (c != 0)
                          cout << "Rownanie nie posiada pierwiastkow\n";
                       else
                          cout << " Rownanie ma nieskonczenie wiele rozwizan\n"  ;

        }  
system("pause");
}
0

Mniej więcej tak chyba że z czymś się pomyliłem .

      if ( a < 0 )
            {
                do
                {
                    cout <<"Za małe a , musi być większe od 0" << endl ;
                    cin >> a ;
                }while(a < 0 );
            } 

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.