stringsplit -> einen array,den es nicht gibt, erstellen.

  • hey leute
    hier mein script und meine frage/problem weiter unten.

    [autoit]


    #include <Array.au3>
    #include <String.au3>

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

    do
    $anzahl = InputBox("Info","Geben sie die anzahl ein:","")
    Until Not @error

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

    $zeit = (($anzahl*7.2)/60)/60

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

    $teile = StringSplit($zeit,".")

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

    If $teile[2] = "" Then
    $nb24h = ($teile[1] + @HOUR)
    Else
    $bruch = (100/$teile[2])
    $min = Int(60/$bruch)*10
    $nb24h = ($teile[1] + @HOUR)
    EndIf

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

    If $nb24h > "24:00" Then
    $24h = ($nb24h - 24.00)
    $hfertig = ($24h + "0:00")
    MsgBox(64,"","" & $hfertig,10)

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

    Else
    MsgBox(64,"","" & $nb24h,10)
    EndIf

    [/autoit]

    nun habe ich das problem, das wenn ich bei der inputbox z.b 1000 eingebe, dass dann ein error kommt, da sich im array die variable $teile[2] nicht befindet.
    $teile[2] will ich aber, weil ich will etwas (nicht) machen lassen (if...then) wenn sich in der variable $teile[2] nichts befindet. sonst muss ich bei der inputbox immernoch eine eins hineinschreiben (also 1001) und das will ich nunmal nicht :P
    hoffentlich könt ihr mir helfen ;)
    mfg

    Einmal editiert, zuletzt von pestomitketchup (7. September 2011 um 21:28)

  • Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <String.au3>

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

    do
    $anzahl = InputBox("Info","Geben sie die anzahl ein:","")
    Until Not @error

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

    $zeit = (($anzahl*7.2)/60)/60

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

    $teile = StringSplit($zeit,".")
    Redim $teile[3]

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

    If $teile[2] = "" Then
    $nb24h = ($teile[1] + @HOUR)
    Else
    $bruch = (100/$teile[2])
    $min = Int(60/$bruch)*10
    $nb24h = ($teile[1] + @HOUR)
    EndIf

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

    If $nb24h > "24:00" Then
    $24h = ($nb24h - 24.00)
    $hfertig = ($24h + "0:00")
    MsgBox(64,"","" & $hfertig,10)

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

    Else
    MsgBox(64,"","" & $nb24h,10)
    EndIf

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • wow das ist ja super :rock:
    schon wieder einen neuen befehl gelernt.
    funktioniert super
    tausend dank !!!