Wertetabellen von Funktionen

  • Hallo.
    Vielleicht kann ja jemand dieses kleine Script gebrauchen. Man gibt seinen Funktionsterm an, den ersten x-Wert und den letzten x-Wert und das Intervall dazwischen und das Script rechnet dann für die alle x-Werte die y-Werte aus, und gibt sie in einer Tabelle aus.
    So kann man sich dann auch Nullstellen ausgeben lassen, wenn man das richtige Intervall erwischt. Sachen wie Sin, Cos, usw. sollten auch funktionieren.
    Habe mir das mal für die Polynomfunktionen gescriptet, die wir gerade im Mathe-Unterricht behandeln und hab mir gedacht vielleicht will jemand so etwas auch benutzen.

    Hier der Code:

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <GUIConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit]

    Global $sTitle = "WerteTabelle - by Bakku (http://www.autoit.de)"
    Global $iWidth = 400
    Global $iHeight = 400
    Global $iStart
    Global $iStop
    Global $iStep
    Global $array[1], $j

    [/autoit] [autoit][/autoit] [autoit]

    $hGUI = GUICreate($sTitle, $iWidth, $iHeight)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel("Funktionsterm:", 30, 53)
    $hInput = GUICtrlCreateInput("", 120, 50, 200, 20)

    [/autoit] [autoit][/autoit] [autoit]

    $hGo = GUICtrlCreateButton("GO!", 340, 50, 50, 20)
    GUICtrlSetOnEvent($hGo, "_Clicked")

    [/autoit] [autoit][/autoit] [autoit]

    $hListView = GUICtrlCreateListView("X|Wert", 10, 100, 380, 290)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    While 1 * Sleep(10)

    [/autoit] [autoit][/autoit] [autoit]

    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Delete()
    For $i = 1 to UBound($array)-1
    GUICtrlDelete($array[$i])
    Next
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _Clicked()
    If UBound($array) <> 1 Then
    _Delete()
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $iStart = InputBox("Start", "Startwert eingeben!")
    $iStop = InputBox("Stop", "Stopwert eingeben!")
    $iStep = InputBox("Step", "Stepwert eingeben!")

    [/autoit] [autoit][/autoit] [autoit]

    For $i = $iStart to $iStop Step +$iStep
    $input = GUICtrlRead($hInput)
    $new = StringRegExpReplace($input, "x", $i)
    $result = Execute($new)
    $list = GUICtrlCreateListViewItem($i & "|" & $result, $hListView)
    _ArrayAdd($array, $list)
    Next
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit]
  • Schön sowas kann man immer gebrauchen ;D

    Tolles Script!
    Wir sollten gemeinsame Sache machen... mein Graphenzeichenskript und dein Rechenskript vereint...
    Top :thumbup:

    Ohja :D, macht doch nen Taschenrechner mit etwas erweiterten Funktionen :D