Integer in Array berechnen lassen

  • Hallo,

    das ist mein erster Eintrag/Frage also seit nicht grob zu mir ^^

    da ich der Internet schon ausgegoogelt habe und einfach nicht mehr weiterweiß muss ich euch hier fragen.

    Ich hab ein Array 1-dimensional das ich mit Zahlen beschreiben will, aber es klappt nicht, die Console sagt Exit code: 1


    Programmierung:

    Fehler:

    Global $ianmy[1] = [$ianmy[0] + $ioffsetanmy]
    Global $ianmy[1] = [^ ERROR


    ... komm einfach nicht weiter.

    mfg

    Unzo1337

  • Bei einer Zuweisung darf kein Global davor stehen. Das ist nur zur Deklaration (Bekanntmachung) der Variable. Danach wird nurnoch ohne Global darauf zugegriffen.
    So sollte es gehen:

    AutoIt
    #include <array.au3>
    Global $ioffsetanmy = 43
    Global $ianmy[20] = [123]
    for $i=0 to 14 step 1
    	$ianmy[$i+1] = $ianmy[0] + $ioffsetanmy*$i
    next
    _ArrayDisplay($ianmy)

    PS: Programmierer sind faul! Sie würde niemals bei jeder Zuweisung Global davorschreiben. Und sie würden auch keine solche Zuweisungsliste manuell hinschreiben/C&P. Dafür gibt es Schleifen ;)

  • Du hast ianmy ja auch bereits definiert. Nach den ersten 2 Zeilen kannst du das "Global" weg lassen. Eventuell solltest du noch einige Tutorials lesen.

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Ich danke euch 2 vielmals :)

    hab ja auch erst seit 3 Tagen damit angefangen zu programmieren.

    Ich denke, wenn man wirklich programmier faul ist, nimmt man strg+c strg+v und das alles umzusetzen xD

    mfg

    Unzo1337

  • Ne. Programmierer meiden copy&paste (C&P steht für strg+c und strg+v) bei gleichem Code, denn:
    1. Wenn man nen bisschen programmiert hat geht die Schleife schneller
    2. Wenn man eine Änderung vornimmt (was recht oft passiert) muss man diese nur an einer Stelle durchführen und nicht x-mal
    3. Wenn man code z.b. in eine funktion auslagert kann man ihn beliebig oft ausführen, nur in dem man eine Funktion aufruft.

    Gibt bestimmt noch mehr Gründe, die mir jetzt nicht einfallen :D