Rückgabe Problem ( Array )!



  • Hallo Leute,

    ich bin ein Einsteiger in Programmieren. Ich will die Nullstellen der
    Polynome berechnen. Dafür muss es eine Methode geben, die Nullstellen heissen und für alle Grade berechnen. Problem : Wie kann ich die Methode definieren, damit es mir mitgeteilt wird, wie viele Nullstellen tatsächlich vorhanden sind? Es könnte z.B. auch keine geben.

    bool CPolynom::Nullstellen(double Nst[5])
    {
    	 bool return_flag = false;
    
    	double p, q, diskriminante;
    
    	//------------Nullstelle für Polynom 1.Grades----------------------------------//
    	if(Grad == 1)
    	{	
    		 Nst[1] = -(c[0]/c[1]);
    		 return_flag = true;
    	}
    	//----------------p-q-Formel--------------------------------------------------//
    	if(Grad == 2)
    	{
    		p = c[1]/c[2];
    		q = c[0]/c[2];
    		diskriminante = pow((p),2)-4*q;
    
    		if(diskriminante < 0) return_flag = false;
    
    		if(diskriminante >= 0)
    		{
    			Nst[1] =(-p + sqrt(diskriminante))/2;
    			Nst[2] =( -p - sqrt(diskriminante))/2;
    			return_flag = true;
    		}
    	}
    	//------------------Formel von Cardano----------------------------------------//
    	if(Grad == 3)
    	{	
    
    		//Cardano(Nst);
    		return_flag = true;
    	}
    
        return return_flag;
    
    }
    

    Wie kann ich das Problem in dem Code lösen?



  • Deine Nst in einen Vector packen und by-Reference übergeben.

    bool CPolynom::Nullstellen(std::vector<double> &nst)
    {
     // ...
    }
    


  • @Artchi

    Kannst du mir bitte helfen? Wie würdest du das programmieren?
    Wie wird es dann geprüft, ob die Nullstellen vorhanden sind?


Anmelden zum Antworten