veit det er matteforum

men tenker at det er nok av folk her som har peil

Moderators: Vektormannen, espen180, Aleks855, Solar Plexsus, Gustav, Nebuchadnezzar, Janhaa
Code: Select all
exp(b*log(a))
http://www.velocityreviews.com/forums/t ... stion.htmlYou can use pow()
pow(base, exponent)
Ingen av tallene trenger å være double for å få ut riktig svar.Gommle wrote:Hvis du bruker C (gjelder ikke C++) må begge tallene være double i pow(a, b)
Code: Select all
int main(void)
{
double a = 0.5, b = 16;
float c = 0.5, d = 16;
int q = 2, r = 4;
printf("double: %f\n", pow(b, a));
printf("float: %f\n", pow(d, c));
printf("int: %f\n", pow(r, q));
}
Code: Select all
double: 4.000000
float: 4.000000
int: 16.000000
Code: Select all
int main(void)
{
double k = 4;
double p = 8;
double t = 7;
double q1 = 1 + 0.01 * 8;
double q2 = 1 + (8 / 100);
double s1 = k * pow(q1, t);
double s2 = k * pow(q2, t);
printf("s1: %f\n", s1);
printf("s2: %f\n", s2);
}
Code: Select all
s1: 6.855297 - riktig
s2: 4.000000 - galt
Virker som en fin måte å få heavy med avrundingsfeilespen180 wrote:Har ingen C-erfaring, men prøver likevel.
For [tex]a^b[/tex] funker kanskje?Code: Select all
exp(b*log(a))
Kanskje verdt et forsøk?
Som du ser i eksempelet de bruker på siden trenger ikke argumentene til funksjonen å være av datatypen double, men det er jo ingenting i veien for at de er det dog.Gommle wrote:Tenkte på http://www.cplusplus.com/reference/clibrary/cmath/pow/ jeg.