09. april 2000 - 00:16Der er
5 kommentarer og 1 løsning
Kvadratrod
Hejsa ... Jeg har gået og spekuleret lidt over hvordan man egentlig laver en sqrt() funktion (kvadratrod) helt fra bunden... Men jeg har ingen anelse om hvordan man gør ... nogen der kan hjælpe???
Reelt handler det jo om at finde et tal der gange med sig selv giver det tal du har. Altså den omvendte vej. Da pc'ere (eller rettere processorer) er bygget til at addere og subtrahere tal, benyttes disse metoder til at gange og dividere, ved at udføre hhv. sammenlægning og fratrækning det antal gange der skal ganges/divideres med.
For at finde kvadratroden af et tal skal man altså finde et tal der gange med sig selv giver det tal man vil finde kvadratroden af.
Til at hjælpe har man så nogle principper:
f.eks.
Hvis tallet er under 100 er det et enkelt tal Hvis det er større end 100 men mindre end 10000 er det et 2 cifret tal o.s.v.
roadkill >> ved du så også hvordan man når frem til sin (sinus) og cos (cosinus) - er det også ren matematik. (Jeg har en lommeregner som ikke kan - men godt kan exp og log.)
soepro >> der findes en række, som udregner cos og sin, noget i retningen af 1/x+2/x^2-3/x^3.... osv, hvor nøjagtigheden afgøres af, hvor mange led, du tager med. Jeg kan ikke huske disse rækker, men de er at finde i enhver matematikbog af en hvis karat (>gymnasieniveau :-)
while (fabs(x*x -x2) > tolerance) { x=(x+x2/x)/2.0; tal++;}
cout << "kvadratroden er " << x; getch(); }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.