Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Cu ce va aparati de cainii agresi...

Nu imi platiti coletul cu cardul ...

Mi-au disparut amigdalitele ?

Exista vreun plan de terorizare p...
 Schimbare adresa DNS IPv4 pe rout...

Recomandare Barebone

Monede JO 2024

Suprasolicitare sistem electric
 CIV auto import

Mutare in MOZAMBIC - pareri, expe...

Scoatere antifurt airtag de pe ha...

Magnet in loc de clește pent...
 Cumparat/Locuit in apartament si ...

Pot folosi sistemul PC pe post de...

Sokol cu distorsiuni de cross-over

Filtru apa potabila cu osmoza inv...
 

Gasire a cat mai multor radacini ale unei ecuatii polinomiale de grad N

- - - - -
  • Please log in to reply
1 reply to this topic

#1
GuyFawkes

GuyFawkes

    Junior Member

  • Grup: Members
  • Posts: 60
  • Înscris: 25.07.2012
Salut.Dupa cum spune titlul , asta incerc sa fac.Eu m-am gandit in felul urmator:
-am luat un interval  de cautare [st,dr] pe care sa-l impart in 1000 de intervale mici de tipul [i,i+pas] , unde pas=(dr-st)/1000
-pentru fiecare interval am cautat o radacina posibila , daca F(radacina) == 0 o pun intr-un vector

double Q(double x , int n)
{
double p = 1;
while(n)
{
	 if(n&1)p*=x;
	 x*=x;
	 n/=2;
}
return p;
}
double F(double x,int niv)
{
	 if(niv==0)
		 return a[0];
	 return Q(x,niv)*a[niv]+F(x,niv-1);
}
double Cauta(double st,double dr)
{
	 if(dr-st<0.0001)
		 return dr;
	 double m;
	 m=(dr+st)/2;
	 if(F(st,n)*F(m,n) < 0)
		 return Cauta(st,m);
	 else return Cauta(m,dr);
}
double viz[100];
double *Generare()
{
	 int contor = 0;
	 double st=-10,dr=10;
	 double pas=(dr-st)/1000.0;
	 for(double i = st;i < dr; i += pas)
	 {
		 double x=i , y = i + pas ;
		 double rad=Cauta(x,y);
		 if(F(rad,n) < 0.001 && F(rad,n) > (-0.001))
			 viz[contor++]=rad;
	 }
	 return viz;
}


Functia Q calculeaza X^n , functia F calculeaza valoare polinomului definit printr-un vector de coeficienti a[] , iar functia Cauta ... cauta.De exemplu,pentru ecuatia x^2-2=0 am reusit sa gasesc in viz radacinile -1.41 si 1.41.Problema e ca , pe langa acestea mai apar si niste valori ciudate , ex:  5.28031e-308 . Mentionez ca ecuatiile pe care le introduc nu au decat radacini reale . Cum scap de valorile acelea?

#2
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
http://en.wikipedia....irstow's_method

Si ignora valorile mai mici de cat ai chef sa setezi toleranta.

Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate