🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #7900

Re: wiskundige functies in c++

#7900
From: Philip Paeps
Date: Fri, 19 Jul 2002 18:17
82 lines
3564 bytes
TRAX <Stijn.Verspeet@pandora[delete.this].be> wrote:

[...]

> mijn klein probleempje is het volgende. uit mijn nota's blijkt dat de
> inverse van log(double x) gelijk is aan ln(double x)

Ik denk dat je even je nota's 'elementaire wiskunde' erbij zult moeten nemen.
De inverse van log(x) is niet ln(x).  (Eerder 10^x, in de veronderstelling dat
log het 'common' logarithme is (vergeef me mijn Nederlands, ik ben steeds in't
Engels naar school geweest), of e^x als het het 'natural' logarithme is).

De algemene logarithmische functie is:

 x = b^(logb(x))

ln is het 'natuurlijk logarithme', of het logarithme uit basis e.  Kan dus ook
geschreven worden als loge(x).

> nu zit mijn goede vriend borland hier te neuten dat hij de functie ln niet
> kent, iemand die de juiste functie hiervoor dan wel kent?

Ja.

In C (zoals je in math(3) en exp(3m) kunt lezen, wordt het natuurlijk log
berekend met log(), en de omgekeerde functie is exp().  Het common log bereken
je met log10.  Voor andere logs moet je gewoon de formule gebruiken om om te
zetten naar log10 of loge.  Die formule ontgaat me even, en ik heb geen zin om
ze uit te rekenen. 

Zoals met alle functies in math.h, gewoon een f achter de functie naam voor
floating point berekeningen, een m erachter om kleine waarden te berekenen.

Voorbeeld:

 | #include <stdio.h>
 | #include <math.h>
 |
 | int main()
 | {
 |               /* Demonstrating logs */
 |               
 |               double x = 25.0,
 |                      y, z, q, r;
 |               
 |               y = log(x);
 |               z = log10(x);
 | 
 |               q = exp(y);
 |               r = pow(10, z);
 | 
 |               printf("ln(%f) = %f\n", x,y);
 |               printf("log(%f) = %f\n\n", x,z);
 |
 |               printf("e^%f = %f\n", y, q);
 |               printf("10^%f = %f\n", z, r);
 |
 |               return 0;
 | }

Bij het uitvoeren (niet vergeten de math-library in te linken), krijg je dan:

 | (philip@juno)~/programming/blub% ./math 
 | ln(25.000000) = 3.218876
 | log(25.000000) = 1.397940
 | 
 | e^3.218876 = 25.000000
 | 10^1.397940 = 25.000000

> ik heb mij al suf gezocht op google en allerlei sites die een beetje
> begrijpbaar zijn voor beginners als ik maar niks gevonden

Waarom?  Staat gewoon in de manual.  Math(3) en exp(3m)...

[...]

 - Philip

-- 
Philip Paeps                                                   philip@paeps.cx

  Serving coffee on aircraft causes turbulence.
Technical Details
Message-ID: <%IYZ8.17422$8o4.2479@afrodite.telenet-ops.be>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-01!sn-xit-08!supernews.com!isdnet!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
References: <6JXZ8.4326$632.468671557@hestia.telenet-ops.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit
X-Google-Thread: fcea4,3660c75d0fe764cc
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-07-19 11:22:54 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-01!sn-xit-08!supernews.com!isdnet!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
Sender: Philip Paeps <philip@juno.home.paeps.cx>
From: Philip Paeps <philip@paeps.cx>
Subject: Re: wiskundige functies in c++
Newsgroups: be.comp.programming
References: <6JXZ8.4326$632.468671557@hestia.telenet-ops.be>
User-Agent: tin/1.5.14-20020718 ("Chop Suey!") (UNIX) (FreeBSD/4.6-STABLE (i386))
Lines: 82
Message-ID: <%IYZ8.17422$8o4.2479@afrodite.telenet-ops.be>
Date: Fri, 19 Jul 2002 18:17:31 GMT
NNTP-Posting-Host: 213.118.135.50
X-Complaints-To: abuse@telenet.be
X-Trace: afrodite.telenet-ops.be 1027102651 213.118.135.50 (Fri, 19 Jul 2002 20:17:31 MET DST)
NNTP-Posting-Date: Fri, 19 Jul 2002 20:17:31 MET DST
Organization: Telenet Internet