Avatar billede MadsHaupt Juniormester
08. august 2013 - 19:35 Der er 16 kommentarer og
1 løsning

Math.Log

Hvad bruger man System.Math.Log funktionen til?.
Avatar billede arne_v Ekspert
08. august 2013 - 19:43 #1
Udregne den naturlige logaritme.
Avatar billede arne_v Ekspert
08. august 2013 - 19:46 #2
Jeg ved ikke hvor meget matematik du kan, men det er en standard matematisk funktion.
Avatar billede arne_v Ekspert
08. august 2013 - 19:47 #3
Avatar billede MadsHaupt Juniormester
09. august 2013 - 09:50 #4
Jeg ved stadig ikke hvordan funktionen regner det ud, kan du ikke skrive et kode eksempel over hvad der er inde i funktionen, så tror jeg måske jeg kan regne ud, hvordan funktionen regner det ud.
Avatar billede arne_v Ekspert
09. august 2013 - 14:51 #5
Jeg gaetter paa at den bruger FYL2X instruktionen paa x86 og x86-64 CPU'er.

:-)
Avatar billede arne_v Ekspert
09. august 2013 - 15:55 #6
Men hvis du vil se en algoritme saa:

Imports System

Namespace E
    Public Class MyMath
        Private Const LOG2 As Double =  0.69314718055994530941
        Public Shared Function Log(x As Double) As Double
            If x > 1 Then
                Return LOG2 + Log(x / 2)
            ElseIf x < 0.5 Then
                Return Log(2 * x) - LOG2
            Else
                Dim res As Double = 0
                Dim q As Double = 1
                For i As Integer = 1 To 50
                    q *= (x - 1)
                    res += If(i Mod 2 = 1, 1, -1) * q / i
                Next
                Return res
            End If
        End Function
    End Class
    Public Class Program
        Public Shared Sub Main(args As String())
            Dim rng As New Random()
            For i As Integer = 0 To 9
                Dim x As Double = Math.Pow(10, i - 4) * rng.NextDouble()
                Console.WriteLine(x)
                Console.WriteLine(Math.Log(x))
                Console.WriteLine(MyMath.Log(x))
            Next
            Console.ReadKey()
        End Sub
    End Class
End Namespace
Avatar billede MadsHaupt Juniormester
09. august 2013 - 17:34 #7
Hvad kan man så for eksempel bruge funktionerne Math.Log(Double, Double) og Math.Log(Double)?.
Avatar billede arne_v Ekspert
09. august 2013 - 18:20 #8
Math.Log(Double)

er som sagt den naturlige logaritme

Math.Log(Double, Double)

er en vilkaarlog logaritme

F.eks. vil det gaelde at:

Math.Log(x) == Math.Log(x, Math.E)

Math.Log10(x) == Math.Log(x, 10)

men du kan bruge Math.Log(x, 2) til den 2 baserede logaritme.
Avatar billede MadsHaupt Juniormester
09. august 2013 - 19:58 #9
Hvorfor skriver du ae, oe, aa i stedet for æ, ø og å?.
arne_v skriv et svar så får du point.
Avatar billede arne_v Ekspert
09. august 2013 - 20:05 #10
US tastatur.
Avatar billede arne_v Ekspert
09. august 2013 - 20:05 #11
og svar
Avatar billede MadsHaupt Juniormester
09. august 2013 - 20:38 #12
Synes du slet ikke at det er let irriterende?.
Avatar billede arne_v Ekspert
09. august 2013 - 20:47 #13
Jo.

Men det er endnu mere irriterende at saette Windows til DK tastatur med et fysisk US tastatur.

Så jeg skifter kun hvis jeg foeler at det er noedvendigt.
Avatar billede arne_v Ekspert
09. august 2013 - 20:48 #14
Hvorfor er du ioevrigt interesseret i Log?
Avatar billede MadsHaupt Juniormester
09. august 2013 - 21:19 #15
Det er fordi jeg er ved at lære om hvordan man læser bilederne fra ikoner og alt muligt andet med ikoner, og i en af de kodeprojekter jeg har fundet på codeproject.com bruger de Math.Log funktionen, og så ville jeg jo gerne hvide hvad de bruger den til.
Avatar billede MadsHaupt Juniormester
09. august 2013 - 21:21 #16
Du kan da bare købe et nyt tastatur.
Avatar billede arne_v Ekspert
09. august 2013 - 21:26 #17
Jeg kan ikke (eller vil ikke) koebe tastatur til min arbejds PC.

Til min private PC kunne jeg vel bestille et tastatur i Danmark, men det har jeg altsaa ikke.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester