wie mach ich ne wertetabelle?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Jeanne

hallo ihr!
also ich habe in der schule informatik und ja wir arbeiten halt mit python. jetzt hab ich versucht so ne wertetabelle zu machen, aber irgendwie hab ich nur die hälfte davon aufgeschrieben, oder kA. auf jedenfall zeigt er mir immer nen fehler an. könnt ihr mir zufällig sagen wie ich ne wertetabelle machen kann??
und wie man negative zahlen einsetzt... vielleicht könnt ihr mir ja helfen, weil ich nämlich irgendwie keine ahnung hab... :roll:

danke Jeanne

P.S: wertetabelle von -4.5 bis +5.5
funktion 0,1xhoch4-0,1xhoch3-2,4xhoch2+0,4x+8
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Lies doch bitte erstmal diesen Thread. Wir geben nur Hilfe zur Selbsthilfe, also wäre es gut, wenn du deinen Code samt Fehlermeldung erstmal postest, als von uns zu verlangen deine Hausaufgaben zu machen. Mit dem Code können wir ja mal schaun :P
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Gast

es ist zwar nicht meine hausaufgabe, aber was solls! und wenn du so antwortest, kommt es mir vor, als wenn du selbst keine ahnung hast, aber naja. wie auch immer. ja hier halt:

Code: Alles auswählen

def wertetabelle (-4.5,5.5,0.5):
      x=-4.5
      y=0,1xhoch4-0,1xhoch3-2,4xhoch2+0,4x+8
      while x<=5.5:
              print x,'   ',y
              x=-4.5 + 0.5

ja das geb ich halt da ein und dann zeigt er mir bei dem minus vor der ersten 4 nen fehler und wenn ich das wegmachen würde, dann zeigt er mir bei der 5 von -4.5 nen fehler. ja und bei der letzten zeile x=-4.5 + 0.5 hab ich auch irgendwie kein plan ob das richtig ist.

Edit (Leonidas): Code in Python-Tags gesetzt.
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

kommt es mir vor, als wenn du selbst keine ahnung hast
Der war gut :D Na gibs schon zu Leonidas, Du bist mit der Aufgabenstellung überfordert :D

Naja, weil ich nicht so bin, hier mal ein kleiner Anhaltspunkt:

Code: Alles auswählen

>>> for x in range(10):
...     print x
Jetzt hast Du x-Werte von 0 bis 9. Der Rest ist Hausaufgabe :)

Gruß, mawe
Gast

was redest du denn da jetzt irgendwas mit 10?
ich will nix mit 10.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

mawe hat geschrieben:
kommt es mir vor, als wenn du selbst keine ahnung hast
Der war gut :D Na gibs schon zu Leonidas, Du bist mit der Aufgabenstellung überfordert :D
Hmm, mawe, ich frage mich wie Jeanne das herausgefunden hat. :twisted:
@Jeanne: Die Taktik, den Moderatoren des Forums erstmal zu sagen, dass sie keine Ahnung haben, würde ich mal als suboptimal einstufen.
mawe hat geschrieben:Der Rest ist Hausaufgabe :)
Hey, mawe, Jeanne hat selbst gesagt dass es keine ist ;)

Dazu ist mir Milans xlrange eingefallen,
das kann man für sowas grandios verwenden:

Code: Alles auswählen

def xlrange(start,stop=None,step=1):
    """xlrange([start=0,]stop[,step=1]) --> iterator object like xrange for longs"""
    if stop==None:
        stop=start
        start=0
    if step>0:
        while start<stop:
            yield start
            start+=step
    elif step<0:
        while start>stop:
            yield start
            start+=step
    else:
        raise ValueError, "xlrange() arg 3 (step) must not be zero"

for i in xlrange(-4.5, 6.0, 0.5):
    print i
So Jeanne, jetzt hast du mal alle Zahlen von -4.5 bis 5.5 in 0.5er Schritten. Jetzt brauchst sie nur noch zu Quadrieren, oder was auch immer. Damit ist die Hausaufgabe auch schon fast fertig.
Zuletzt geändert von Leonidas am Donnerstag 8. September 2005, 19:58, insgesamt 1-mal geändert.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Leonidas hat geschrieben: Hey, mawe, Jeanne hat selbst gesagt dass es keine ist
Ich weiss, diese Hausaufgabe war von mir :D
Gast

naja irgendwie wart ihr keine hilfe... aber was solls!
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Hmm, Jeanne sag jetzt mal:
Die Bereich von x ist von -4.5 bis 5.5. Wie groß ist die Schrittweite? 0.5?

Deine Hausaufgabe ist falst gelöst und du sagst, wir waren keine Hilfe. Vielleicht liegt es daran, dass du unsere Tipps nicht verstehst oder nicht verstehen willst sondern scheinbar auf eine fertige Lösung hoffst.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Gast

so wie ich euch das da..also warte mal....

def wertetabelle (a,b,sw):
x=a
y= die funktion
while x<=b:
print x,' ',y
x=x+sw


so, das hat unser lehrer an die tafel geschrieben. und das
wertetabelle von -4.5 bis +5.5
funktion 0,1xhoch4-0,1xhoch3-2,4xhoch2+0,4x+8

ist halt das, wo er meinte, wovon wir halt diese wertetabelle da ausrechnen können!!(wir habn ihn in informatik & mathe...) aber wie gesagt, macht python bei mir imma ne fehlermeldung. deswegen nützt es mir nix, wenn ihr mir irgendwelche anderen möglichkeiten sagt, wie ich das machen kann... verstehst du/ihr?
XT@ngel
User
Beiträge: 255
Registriert: Dienstag 6. August 2002, 14:36
Kontaktdaten:

Anonymous hat geschrieben:aber wie gesagt, macht python bei mir imma ne fehlermeldung.
Was sagt dir diese Fehlermeldung?

MfG
Andreas
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Na das is es ja fast schon :)
Wenn Du die Funktion noch so schreibst, dass Python was damit anfangen kann, hast Du's schon geschafft (beinahe).

Code: Alles auswählen

y = 0.1*x**4 - 0.1*x**3 ...
Aufrufen musst Du das ganze dann mit

Code: Alles auswählen

wertetabelle(-4.5, 5.5, 0.5)
Zuletzt geändert von mawe am Donnerstag 8. September 2005, 20:21, insgesamt 1-mal geändert.
Gast

ja er macht wie gesagt das minus vor der ersten 4 rot. und wenn ich das dann wegmache und dann nochma probier ist die 5 angeblich falsch
Gast

also unser lehrer meinte, dass potenzen also so gehen:

5*x**4

heisst halt
5xhoch4
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Stimmt, habs grad ausgebessert (peinlich).
Gast

ja mach tja nix, aber irgendwie kapier ich net was daran halt falsch is, wenn ich das eingeb
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Poste doch nochmal deinen jetzigen Code... Ach und setzte den zwischen [python]BlaBlaBla[/python]

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Code: Alles auswählen

def wertetabelle (-4.5,5.5,0.5):
      x=-4.5
      y=0,1xhoch4-0,1xhoch3-2,4xhoch2+0,4x+8
      while x<=5.5:
              print x,'   ',y
              x=-4.5 + 0.5
Das hast Du gepostet. Na gut, mal überlegen ... wozu schreibst Du bei def wertetabelle(-4.5, 5.5, 0.5), die Zahlen in die Klammer? Kannst Du eigentlich weglassen, Du schreibst ja nachher eh x = -4.5 ;) Der Witz an der Sache ist ja, dass Du diese Funktion auch mit anderen Werten verwenden können willst. Also verwenden wir Variablen:

Code: Alles auswählen

def wertetabelle(a, b, sw):
    x = a
    ...
Wie ich Dir vorhin gezeigt habe, rufst Du das ganze dann mit

Code: Alles auswählen

wertetabelle(-4.5, 5.5, 0.5)
auf. Dann ist x auch -4.5. Mit Deiner Version (ohne Werte in Klammern, die verursachen eh nur Fehlermeldungen ;)) kannst Du die Funktion nur mit diesen 3 Werten verwenden, was sehr unflexibel ist.
Gast

:? irgendwie ist das alles zu hoch für mich :oops:

also meinst du jetzt ich soll das alles so eingeben

def wertetabelle ():
x=-4.5
y=0,1xhoch4-0,1xhoch3-2,4xhoch2+0,4x+8
while x<=5.5:
print x,' ',y
x=-4.5 + 0.5

oder was? also wenn ich das mache, und das dann halt mit

wertetabelle(-4.5, 5.5, 0.5)

aufrufe, dann kommt mal wieder eine fehermeldung... :cry:
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

:) Nein.

Code: Alles auswählen

def wertetabelle():
Das ist eine Funktion die keine Argumente haben will.

Code: Alles auswählen

wertetabelle(-4.5, 5.5, 0.5)
Hier rufst Du sie mit 3 Argumenten auf. Dass Python sich hier beschwert ist doch logisch, oder? ;)
Ich hab Dir ja schon gezeigt wie Du's machen sollst:

Code: Alles auswählen

def wertetabelle(a, b, sw):     # <- will 3 Argumente haben
    ...

wertetabelle(-4.5, 5.5, 0.5)    # <- wird mit 3 Argumenten gefüttert
Antworten