Räta linjen med Python: Skillnad mellan sidversioner

Från Wikiskola
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
 
(5 mellanliggande sidversioner av samma användare visas inte)
Rad 1: Rad 1:
[[Kategori:Python]]  
[[Kategori:Python]] [[Kategori:Ma1c]] [[Kategori:Ma2c]] [[Kategori:Funktioner]]
{{python|[[Python|Lathund för Python-programmering]]}}
{{malruta| '''Kom igång med programmering i matematiken.'''
{{malruta| '''Kom igång med programmering i matematiken.'''


Rad 7: Rad 8:
Målet är inte att du ska lära dig programmering på matematiklektionen men det är oundvikligt att du ändå lär dig lite Python-kod.  
Målet är inte att du ska lära dig programmering på matematiklektionen men det är oundvikligt att du ändå lär dig lite Python-kod.  
}}
}}
== Uppgift på räta linjen ==
{{uppgruta|'''Testa din huvudräkning med ett Python-program och GeoGebra'''
# Rita en rät linje genom två punkter i GeoGebra
# Ändra i punkterna så att du får olika lutning och skärningspunkter med y-axeln.
# Räkna ut k och m i huvudet
# Skriv in koordinaterna i programmet och testa om du räknat rätt.
# Upprepa tio gånger med olika värden.
# Studera programmet
## Varför heter variablerna som de gör?
## Vilka beräkningar görs?
## Härled beräkningen av m algebraiskt.
# Hur fungerar programmet med heltal respektive decimaltal?
# Testa vad som händer om x1 {{=}} x2, förklara varför och åtgärda gärna problemet.
}}
== Koden för att beräkna k och m ==


<pre>
<pre>
# For slope
print("Beräknar k och m från två punkter på räta linjen.")
rom __future__ import division
x1 = int(input("x1 = "))
def getSlope((x1, y1), (x2, y2)):
y1 = int(input("y1 = "))
    return (y2-y1)/(x2-x1)
x2 = int(input("x2 = "))
y2 = int(input("y2 = "))
 
deltay = y2-y1
deltax = x2-x1
lutning = deltay/deltax
# lutning = (y2-y1)/(x2-x1)
m = -x1*lutning+y1


# For y-intercept
print("k = ", lutning, "m = ", m)
def getYInt((x1, y1), (x2, y2)):
    slope = getSlope((x1, y1), (x2, y2))
    y = -x1*slope+y1
    return (0, y)
</pre>
</pre>
Koden kommer från: [https://stackoverflow.com/questions/28789614/x-and-y-intercepts-from-slopes-python StackOverflow]

Nuvarande version från 25 mars 2018 kl. 14.13

Programmeringsuppgift

Lathund för Python-programmering

Mål för undervisningen Kom igång med programmering i matematiken.

Målet är att du ska köra ditt första program för att utföra matematiska beräkningar. Du bör testa att modifiera algoritmen så att dina beräkningar blir mer effektiva.

Målet är inte att du ska lära dig programmering på matematiklektionen men det är oundvikligt att du ändå lär dig lite Python-kod.


Uppgift på räta linjen

Uppgift
Testa din huvudräkning med ett Python-program och GeoGebra
  1. Rita en rät linje genom två punkter i GeoGebra
  2. Ändra i punkterna så att du får olika lutning och skärningspunkter med y-axeln.
  3. Räkna ut k och m i huvudet
  4. Skriv in koordinaterna i programmet och testa om du räknat rätt.
  5. Upprepa tio gånger med olika värden.
  6. Studera programmet
    1. Varför heter variablerna som de gör?
    2. Vilka beräkningar görs?
    3. Härled beräkningen av m algebraiskt.
  7. Hur fungerar programmet med heltal respektive decimaltal?
  8. Testa vad som händer om x1 = x2, förklara varför och åtgärda gärna problemet.


Koden för att beräkna k och m

print("Beräknar k och m från två punkter på räta linjen.")
x1 = int(input("x1 = "))
y1 = int(input("y1 = "))
x2 = int(input("x2 = "))
y2 = int(input("y2 = "))

deltay = y2-y1
deltax = x2-x1
lutning = deltay/deltax
# lutning = (y2-y1)/(x2-x1)
m = -x1*lutning+y1

print("k = ", lutning, "m = ", m)