loop_le
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## loop_le

loop_le — Constructions de boucle.

## Description

Construction d'opérations de boucle.

## Syntaxe

    loop_le   indx, incr, imax, label

    loop_le   kndx, kncr, kmax, label

## Initialisation

indx -- variable de taux-i, compteur de la boucle.

incr -- valeur d'incrément de la boucle.

imax -- valeur maximale de l'index de la boucle.

## Exécution

kndx -- variable de taux-k, compteur de la boucle.

kncr -- valeur d'incrément de la boucle.

kmax -- valeur maximale de l'index de la boucle.

L'action de loop_le est équivalente à

             indx  =  indx + incr
             if (indx <= imax) igoto label

ou à

             kndx  =  kndx + kncr
             if (kndx <= kmax) kgoto label

## Exemples

Voici un exemple de l'opcode loop_le. Il utilise le fichier loop_le.csd.

Exemple 455. Exemple de l'opcode loop_le.

Voir les sections Audio en Temps Réel et Options de la Ligne de Commande pour plus d'information sur l'utilisation des options de la ligne de commande.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    -odac     ;;;realtime audio out
    ;-iadc    ;;;uncomment -iadc if RT audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o loop_le.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs  = 1

    seed 0
    gisine ftgen 0, 0, 2^10, 10, 1

    instr 1 ;master instrument

    ininstr = 5 ;number of called instances
    indx = 0
    loop:
          prints "play instance %d\\n", indx
    ipan  random 0, 1
    ifreq random 100, 1000
    iamp  = 1/ininstr
    event_i "i", 10, 0, p3, iamp, ifreq, ipan
    loop_le indx, 1, ininstr, loop

    endin

    instr 10

    ipeak random 0, 1 ;where is the envelope peak
    asig  poscil3 p4, p5, gisine
    aenv  transeg 0, p3*ipeak, 6, 1, p3-p3*ipeak, -6, 0
    aL,aR pan2 asig*aenv, p6
          outs aL, aR

    endin

    </CsInstruments>
    <CsScore>
    i1 0 10
    e
    </CsScore>
    </CsoundSynthesizer>

Sa sortie contiendra des lignes comme celles-ci :

    play instance 0
    play instance 1
    play instance 2
    play instance 3
    play instance 4
    play instance 5

## Voir aussi

loop_ge, loop_gt et loop_lt.

Plus d'information sur cet opcode : http://www.csoundjournal.com/2006summer/controlFlow_part2.html, écrit par Steven Yi. Et dans les Floss Manuals : http://en.flossmanuals.net/csound/ch018_c-control-structures

## Crédits

Istvan Varga.

Nouveau dans la version 5.01 de Csound

Précédent | Niveau supérieur | Suivant
loop_gt | Sommaire | loop_lt