Gå til innhold

Metode for potenser ved bruk av float?


Anbefalte innlegg

Jeg vil lage en while-løkke som regner ut uttrykket

 

3 + 2^(-n)

 

for n= 0 og opp til den n som gir svar = 3.

 

Dette er i og for seg enkelt, men jeg har fått beskjed om å bruke datatypen float, men så vidt jeg kan se finnes det power-metode bare for double. Hva kan jeg gjøre da tro? :hmm:

Lenke til kommentar
Videoannonse
Annonse

Holder det ikke å bare caste til float? Slik feks?

 int n;
 for (n = 0; (3 + (float)Math.pow(2, -n)) > 3.0; n++);
 System.out.println(n);

 

Uten (float) blir det 52, med blir det 23.

 

Å skrive egen pow-algoritme blir vel ganske tidkrevende og blir vel mer et studie i matematikk enn i java/programmering.

 

Edit: Når jeg tenker meg om er det vel egentlig ganske enkelt, hvis man bare skal ha heltall i eksponenten, som i denne situasjonen, men koden over gjør vel det du skal?

Endret av Mortal
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...