Seite 1 von 1
mathematische funktion
Verfasst: Samstag 15. November 2003, 20:27
von Gast
hi zusammen....
ich bin neu hier und habe folgende frage.....
ich habe einen konstruktor der eine mathematische funktion(z.b. math.cos(x)) und noch 3 float werte übergeben soll.
nun kommt die bedingung.... das x in der funktion(cos(x) soll erst in der methode einem wert zugewiesen werden.
also es wird kein wert übergeben sondern eine funktion in die ich später einen wert einsetzten möchte.
ok schonmal vielen dank
Verfasst: Samstag 15. November 2003, 20:58
von Dookie
Hallo,
wenn ich Dich richtig verstanden habe:
Code: Alles auswählen
def myfuc(f, a, b, c):
...#berechne x aus a b und c
result = f(x)
return result
import math
print myfunc(math.cos, 1.415, 2.0, 3.1415)
Gruß
Dookie
Verfasst: Sonntag 16. November 2003, 12:25
von Gast
um genau zu sein soll die funktion so aussehen
def wertetabelle( f, anfangswert, endwert, schritte):
nun soll, wenn f die funktion xe2 ist folgendes passieren:
wenn der anfangswert 1 ist, der endwert 4 und die schritte 6 sind, dass heisst auf die werte 1 bis 4 werden 6 schritte ausgeführt.
in diesem beispiel würde der erste wert 1 der zweite wert 1.5 der dritte 2 der viert 2,5 der fünte 3 under sechste 3,5 und dann das ende mit 4.
nun sollen diese werte die funktion durchlaufen und ausgeben.
hoffe das war nicht zu konfus
danke
Verfasst: Sonntag 16. November 2003, 13:44
von Milan
Mal ein Versuch:
Code: Alles auswählen
def wertetabelle(f,startwert,endwert,schritte):
schrittweite=float(endwert-startwert)/schritte
while startwert<endwert:
print f(startwert+schrittweite)
startwert+=schrittweite
Verfasst: Sonntag 16. November 2003, 14:20
von Dookie
Hallo nochmal,
@Milan: müsste die Bedingung bei while nicht <= sein, da ja sonst der Endwert nie erreicht und ausgegeben wird?
@Gast,:
sollten die Werte ausgegeben oder zurückgegeben werden? Wenn ausgegeben hat Milan ja schon eine Lösung gezeigt. Wenn zurückgegeben bleicbt noch die Frage als liste oder mittels Generator.
Hier noch eine Lösung, die mit dem Numericmodul von Python arbeitet.
Code: Alles auswählen
from Numeric import *
def wertetabelle(f, startwert, endwert, schritte):
schrittweite = (endwert-startwert)/schritte
tabelle = arrayrange(startwert, endwert+schrittweite, schrittweite)
return map(f, tabelle) # gibt eine Liste mit berechneten Werten zurueck
Gruß
Dookie
Verfasst: Sonntag 16. November 2003, 21:16
von Gast
vielen dank an alle
ihr habt mir richtig weiter geholfen