"Eval" funksjon i C#

Her kan du stille spørsmål vedrørende matematikken som anvendes i fysikk, kjemi, økonomi osv. Alle som har kunnskapen er velkommen med et svar.

Moderatorer: Vektormannen, espen180, Aleks855, Solar Plexsus, Gustav, Nebuchadnezzar, Janhaa

Svar
Zahand
Cayley
Cayley
Innlegg: 61
Registrert: 26/05-2013 12:59
Sted: Grimstad

Hei. Så dette er mer et programerings-spørsmål enn matematisk. Jeg har i oppgave å lage en kalkulator i C# og lurte på om det var en "eval" funksjon som javascript har. Etter litt googl-ing kom jeg frem til dette:

Kode: Velg alt

 public static double Evaluate(string expression)
        {
            System.Data.DataTable table = new System.Data.DataTable();
            table.Columns.Add("expression", string.Empty.GetType(), expression);
            System.Data.DataRow row = table.NewRow();
            table.Rows.Add(row);
            return double.Parse((string)row["expression"]);
        }
Men jeg skjønner ikke hvordan denne koden funker. (Nettopp begynt med C#) Kunne noen hjelpe meg skjønne denne koden?
Sist redigert av Zahand den 30/01-2015 19:22, redigert 1 gang totalt.
Aleks855
Rasch
Rasch
Innlegg: 6855
Registrert: 19/03-2011 15:19
Sted: Trondheim
Kontakt:

Long story short, C# har ikke en ekvivalent funksjon til JavaScript sin eval().

Den kodebiten der bruker bare en tabellfunksjon fra det innebygde APIet til C# for å plotte en graf. Ikke for å regne ut matematiske strenger.
Bilde
Zahand
Cayley
Cayley
Innlegg: 61
Registrert: 26/05-2013 12:59
Sted: Grimstad

hmmm, men den funker for å regne ut strenger. Nå ble jeg bare enda mer forvirret..
Aleks855
Rasch
Rasch
Innlegg: 6855
Registrert: 19/03-2011 15:19
Sted: Trondheim
Kontakt:

Ja, du burde egentlig ikke bruke veldig mye tid på det i min mening.

Du kan heller lage en egen parser som tolker tekststrenger med matematiske regnestykker. Det var en av oppgavene vi fikk på høyskolen.
Bilde
Svar