Gå til innhold

[Python] løse matematikk oppgaver


Anbefalte innlegg

Heisann, i sommer har jeg jobbet med Python. Ligger foreløpig på begynnerstadiet (basic brancing, loops, funksjoner, decisions)

 

Skal ta opp Matematikk T1 og R1 dette året (vil gå over til en realfagsbasert utdannelse), og jeg tenkte det kunne vært lurt å slå to fluer i et smekk. Hvorfor ikke prøve å løse endel av oppgavene med Python? :)

 

 

  • Er matte og Python en god kombinasjon?
  • Hva gjør feks math modulen til Python?
  • Er det noen av dere som bruker Python til generell problemløsing?

Lenke til kommentar
Videoannonse
Annonse

Matte fungerer fint sammen med python, og egentlig veldig mange andre språk. I noen veldig ressurskrevende algoritmer som du kanskje løser for å få høy nøyaktighet på løsningen vil det i mange tilfeller være bedre å bruke C/C++. Jeg kan forresten anbefale Mathematica og MatLab som du kan se på, som er beregnet for å drive med matematikk på datamaskinen.

 

Math-modulen i python gir deg mer avanserte mattefunksjoner som ikke er med fra standard. Tin g som kvadratrot, cosinus, sinus o.s.v. (se http://docs.python.org/library/math.html)

 

Jeg bruker Python veldig mye til generell-problemløsning. Og de gangene python ikke strekker helt til ved at ting tar for lang tid når jeg koder det i python lager jeg som oftest en skisse av algoritmen i Python og tester den ut, for å se om jeg har forstått den helt (Les: en slaks erstating for psaudokode), siden det er så raskt og enkelt å lage ting i python. Senere koder jeg det over til f.eks. C/C++ når jeg har fått til en god og fungerende algoritme.

Lenke til kommentar
Er matte og Python en god kombinasjon?

Det er en en veldig bra kombinasjon.

Det at man skrive inn eller bryte ned deler av koden i python shell(IDLE),er en stor fordel.

Noen bra videoer Python for Math Teachers

 

Hva gjør feks math modulen til Python?

Ja kan ta er rask demo.

>>> import math
>>> dir(math)
['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']

>>> #we see all methods under math module
>>> help(math.sqrt)
Help on built-in function sqrt in module math:

sqrt(...)
   sqrt(x)

   Return the square root of x.

>>> math.sqrt(64)
8.0
>>> from math import *
>>> #not a good way to import,just some easiser typing for now
>>> sqrt(150)
12.24744871391589

>>> help(pow)
Help on built-in function pow in module math:

pow(...)
   pow(x, y)

   Return x**y (x to the power of y).

>>> pow(5, 5)
3125.0

>>> x = 2
>>> [pow(i, x) for i in range(10)]
[0.0, 1.0, 4.0, 9.0, 16.0, 25.0, 36.0, 49.0, 64.0, 81.0]

>>> sin(5)
-0.9589242746631385
>>> sin(degrees(25))
-0.1709188927014062

>>> [sin(degrees(i)) for i in range(10)]
[0.0, 0.6795226183513794, 0.9970697330600953, 0.7834868911723467, 0.15254772534412783, -0.5596522230095522, -0.9737305344703966, -0.8691114676419106, -0.3015246456200019, 0.4266816061477646]
>>>

 

Python stiller sterk i "scientific computing" med moduler som numpy/scipy matplotlib

Bye Matlab, hello Python, thanks Sage

 

Er det noen av dere som bruker Python til generell problemløsing?

ja ofte en stor del av det med programmring er løse og problemer.

Man har projecteule som har en del matte inn i bildet.

Det var en euler tråd for en stund siden du kan se på Den store project euler tråden

Endret av SNIPPSAT
Lenke til kommentar

Takk til dere begge! :)

 

Skal få sett gjennom Python for math teachers. Forøvrig genial den help funksjonen du hadde i demo koden, aldri sett før. Greit å få sett detaljene til ulike funksjoner.

 

Men nå, tilbake til Python, lærer mye mer av å sitte med problemer i Python enn å lese masse teori fra bøker (har dog kjøpt 3 Python bøker).

Lenke til kommentar
  • 4 uker senere...

Ja Python fungerer (som flere andre har sagt) bra til matte. Jeg har løst ganske mange Prosjekt Euler oppgaver med Python, og har sjelden problemet med att det er for tregt.

 

Var dog en oppgave som tok nesten 2timer på å løse, men det var for jeg hadde lagt en veldig dårlig Primtall generator :p

Lenke til kommentar
  • 2 uker senere...

Ja Python fungerer (som flere andre har sagt) bra til matte. Jeg har løst ganske mange Prosjekt Euler oppgaver med Python, og har sjelden problemet med att det er for tregt.

 

Var dog en oppgave som tok nesten 2timer på å løse, men det var for jeg hadde lagt en veldig dårlig Primtall generator :p

 

Hvordan lagde du den primtall generatoren? Lyst å gi meg noen hint så jeg kan prøve å lage en selv? Ute etter å lage en generator som kan primtallfaktorisere tall.

Lenke til kommentar
  • 2 uker senere...

Jeg vet ikke om Python egner seg så mye til matte på nivå R1 og T1, da det ikke er noe numerisk inne i bildet der, men det kan jo hende du kan bruke det til noe. Men ellers egner python seg veldig godt til matte og annen naturvitenskapelig bruk, som andre her har nevnt. Jeg bruker python til fysikkproblemer i studiene mine ofte. Eneste ulempen er at python-programmer kjører forholdsvis sakte, men noen metoder er implimentert i C, og det hjelper.

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...