LUA und Tabellenverarbeitung

!!! Please ensure, that your contribution or question is placed into the relevant section !!!
Questions about rolling stock, for example, do not belong in "Questions about the Forum". Following is perhaps the right area where your question will be better looked after:
General questions to EEP , Splines, rolling stock, Structures in EEP, landscape elements, Signalling system and controlling, designers, Europe-wide EEP meetings , Gossip
Your cooperation to keep the forum clear is appreciated.
In the case of pictures that are attached to the article, the source must also be stated. This also applies to your own pictures, which were taken by you. Pictures without source information will be deleted!
  • Guten Morgen,


    ich habe ein Problem mit der Darstellung des Indexwertes in LUA.


    Ich durchsuche eine Tabelle.

    Wenn ich den gesuchten wert gefunden habe will ich die Position des Wertes in der Tabelle ausdrucken.


    Beispiel:


    for i = 1, 6, 1 do


    if w[i] >= 24

    then

    print ("Position = ", i)

    end

    end


    So funktioniert es nicht da kommt der Fehler dass es ein arithmetisches Problem gibt.

    Wie kann ich den Index = i darstellen ?



    Gruß

    Alfred

    Intel Core I5 3550; RAM 24 GB; Windows 10 (64 Bit),
    Nvidia Geforce GTX 960 (4 GB)
    EEP Modelconverter, Modell-Explorer, Texturenmultiplier, Task-Memorizer, Status-Memorizer, Modell-Katalog
    EEP 6.1, EEP 15.0, EEP 16 Update 4

  • Ich nehme an, Du hast deiner Tabelle zuerst definiert ?

    Code
    1. w = {1,2,5,10,15,20,25,30,35,50,55}
    2. for i = 1,#w do
    3. if w[i] >= 24 then
    4. print ("Position = ", i)
    5. end
    6. end


    Output :


    Code
    1. Position = 7
    2. Position = 8
    3. Position = 9
    4. Position = 10
    5. Position = 11


    Mit for i = 1,#w do kannst Du die gesamte Tabelle durchlaufen ohne die Anzahl der Daten selbst zählen zu müssen, so kannst Du deiner Tabelle jederzeit erweitern oder kürzen, ohne diese Zeile anpassen zu müssen.


    Und schließlich ist es immer übersichtlicher Code per Tab einzurücken lassen...

    Desktop : Windows 10 Pro 64Bit - i7-4790 4.0Ghz - 32Gb RAM - Asus Geforce GTX-06G 1060 (6Gb) - Dual screen Asus VS247 24"
    Laptop : Windows 10 Home 64Bit - i7-4750HQ 3.2Ghz - 16Gb RAM - NVidia GTX960M


    Ich bin dabei seit EEP 6 und benutze jetzt EEP 16


    Free EEP-tools : Model Multiplier / Texture Multiplier / EEP window restore Tool / EEP Inventory Exporter


    37310-banner2018-jpg

    The post was edited 2 times, last by eepnolie (NR1) ().

  • Hallo Alfred ( Alfred ),

    in welcher Zeile kommt die Fehlermeldung?


    Ich schätze mal in

    if w[i] >= 24 then


    Die genaue Fehlermeldung, nicht Deine Übersetzung, wäre eventuell auch hilfreich


    Bitte zeige uns noch, was in Deiner Tabelle w steht.

    Jürgen


    EEP: 12.1, 13.2, 14.1, 15.1, 16.4 (z.Zt. installiert, bezahlt, aber nur für Tests im Einsatz, da auf Fehlerbeseitigung gewartet wird)

    keinerlei Zusatztools und manuell manipulierte Anlagendateien


    Prozessor: Intel(R) Core(TM) i5-4460S CPU @ 2.90 GHz 2.90 GHz
    PC: RAM 12 GB, Windows 10 Home, 64 Bit
    GK: NVIDIA Geforce GT 730, 4 GB