>

> — Détermine si une valeur est supérieure à l'autre.

Description

Détermine si une valeur est supérieure à l'autre.

Syntaxe

(a >  b ? v1 : v2)

a, b, v1 et v2 peuvent être des expressions, mais a, b pas de taux audio.

Exécution

Dans l'expression conditionnelle ci-dessus, a et b sont d'abord comparés. Si la relation indiquée est vraie (a supérieur à b), alors l'expression conditionnelle prend la valeur de v1 ; si la relation est fausse, l'expression prend la valeur de v2.

Nota Bene : Si v1 ou v2 sont des expressions, elles seront évaluées avant que l'expression conditionnelle ne soit déterminée.

En termes de précédence, tous les opérateurs conditionnels (c-à-d. les opérateurs relationnels (<, etc.), et ?, et : ) sont plus faibles que les opérateurs arithmétiques et logiques (+, -, *, /, && et ||).

Ce sont des opérateurs pas des opcodes. C'est pourquoi on peut les utiliser dans les instructions de l'orchestre, mais ils ne forment pas des instructions complètes par eux-mêmes.

Exemples

Voici un exemple de l'opérateur >. Il utilise le fichier greaterthan.csd.

Exemple 19. Exemple de l'opérateur >.

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
; Audio out   Audio in
-odac           -iadc    ;;;RT audio I/O
; For Non-realtime ouput leave only the line below:
; -o greaterthan.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

; Initialize the global variables.
sr = 44100
kr = 44100
ksmps = 1
nchnls = 1

; Instrument #1.
instr 1
  ; Get the 4th p-field from the score.
  k1 =  p4

  ; Is it greater than 3? (1 = true, 0 = false)
  k2 = (p4 > 3 ? 1 : 0)

  ; Print the values of k1 and k2.
  printks "k1 = %f, k2 = %f\\n", 1, k1, k2
endin


</CsInstruments>
<CsScore>

; Call Instrument #1 with a p4 = 2.
i 1 0 0.5 2
; Call Instrument #1 with a p4 = 3.
i 1 1 0.5 3
; Call Instrument #1 with a p4 = 4.
i 1 2 0.5 4
e


</CsScore>
</CsoundSynthesizer>


Sa sortie contiendra des lignes comme :

k1 = 2.000000, k2 = 0.000000
k1 = 3.000000, k2 = 0.000000
k1 = 4.000000, k2 = 1.000000

Voir aussi

==, >=, <=, <, !=

Crédits

Exemple écrit par Kevin Conder.