Page 1 of 1

comptage de boucle

Posted: 07 Sep 2013, 15:48
by zetaz
Bonjour.
En faisant des tests de boucle, et en me trompant, je crois avoir découvert un petit bug.
Je crée une variable LN format numérique valeur 1
J'affiche ça valeur dans une console
j'utilise la "fonction" variable pour ajouter +1 à LN et là, je laisse le format par défaut à savoir "chaine de caractère"
puis je crée une boucle qui retourne 3 fois à la console.
Je m'attendais à avoir comme resultat 1 2 3 4
et en fait j'ai 1 2 21 211
La ou c'est étonnant c'est le 2 . En toute logique j'aurais du avoir 1 11 111 1111

Merci.

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<scriptfile>
    <settings program="actionaz" version="3.7.0" scriptVersion="1.0.0" os="Windows"/>
    <actions>
        <action name="ActionLoop" version="1.0.0"/>
        <action name="ActionVariable" version="1.0.0"/>
        <action name="ActionConsole" version="1.0.0"/>
    </actions>
    <parameters/>
    <script pauseBefore="0" pauseAfter="0">
        <action name="ActionVariable" comment="N° de ligne">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="colorValue">
                <subParameter name="value" code="0">::</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">LN</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">integer</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="positionValue">
                <subParameter name="value" code="0">:</subParameter>
            </parameter>
        </action>
        <action name="ActionConsole">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="output">
                <subParameter name="value" code="0">information</subParameter>
            </parameter>
            <parameter name="text">
                <subParameter name="value" code="0">Ligne $LN</subParameter>
            </parameter>
        </action>
        <action name="ActionVariable">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <parameter name="colorValue">
                <subParameter name="value" code="0">::</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0">LN</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">string</subParameter>
            </parameter>
            <parameter name="value">
                <subParameter name="value" code="1">LN +1</subParameter>
            </parameter>
            <parameter name="positionValue">
                <subParameter name="value" code="0">:</subParameter>
            </parameter>
        </action>
        <action name="ActionLoop">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">002</subParameter>
            </parameter>
            <parameter name="count">
                <subParameter name="value" code="0">4</subParameter>
            </parameter>
        </action>
    </script>
</scriptfile>

Re: comptage de boucle

Posted: 14 Sep 2013, 12:15
by Jmgr
Non parce qu'en fait la première fois LN est de type entier, donc devient 2. Le résultat est converti en chaîne de caractères, c'est pour ça que les appels successifs ajoutent 1 à la fin.
Si tu change le type de ta première action Variable en string tu verra que tu obtiens bien une suite de 1.