Wachtwoord kwijt?
Home arrow Sonar arrow Cakewalk Application Language
Cakewalk Application Language Print E-mail
Artikel Index
Cakewalk Application Language
De syntax van CAL
Datatypen
Events
Constanten
Declaraties
Interactie met de gebruiker
Rekenkundige bewerkingen
Relationele functies
Logische operatoren
Muziek tijdfuncties
Flow control functies
Aanmaken van een CAL-programma
Uitvoeren van een CAL-programma
Voetnoten
 

Rekenkundige bewerkingen

In een programma zal je vaak rekenkundige bewerkingen moeten uitvoeren op je gegevens in de MIDI-sequence. CAL kent de volgende rekenkundige functies:

(+   <operand1> <operand2>) ; telt operand2 bij operand1
(-    <operand1> <operand2>) ; trekt operand2 van operand1 af
(*    <operand1> <operand2>)

; vermenigvuldigt operand2 met

;   operand1

(/    <operand1> <operand2>) ; deelt operand1 door operand2
(%  <operand1> <operand2>) ; rest van de deling van operand1 door
;   operand2
(++ < variabele>)

; verhoogt de waarde van variabele

;   met één

(--   <variabele>)

; verlaagt de waarde van de variabele

;  met één 

(random <minimum> <maximum>)

; geeft een willekeurig getal tussen

;   minimum en maximum

De meeste functies spreken voor zich, maar de “%” (modulo) functie kan wel een nadere toelichting gebruiken. In CAL bestaan alleen hele getallen. Als er door een deling een rest overblijft, kan deze met de “%” functie worden gevonden. Ik zal dit toelichten met een voorbeeld. In dit voorbeeld willen we weten wat het versienummer is van CAL en dat aan de gebruiker laten zien.

Versienummers zien er bijvoorbeeld uit als: 4.5.  CAL bewaart zijn versienummer in de constante VERSION. Daar CAL alleen hele getallen kent is dit versienummer vermenigvuldigd met 10. Dus in VERSION staat volgens ons voorbeeld: 45.

Een bericht naar de gebruiker kunnen we als volgt programmeren:

(pause "De versie van CAL is: " (/ VERSION 10) "." (% VERSION 10))

Het getal voor de punt volgt uit: (/ VERSION 10) en het getal na de punt berekenen we met (% VERSION 10). Analyseer zelf hoe het bericht is samengesteld met een aantal strings en deze berekeningen. De gebruiker krijgt te zien: De versie van CAL is: 4.5.

De “random” functie is een beetje vreemde eend in de bijt. Hiermee kan een zogenaamd willekeurig getal worden gegenereerd, dat ligt tussen het minimum en maximum.



Laatste aanpassing ( woensdag, 19 december 2007 )
 
Volgende >
© 2012 HCCmuziek.nl
Joomla! is Free Software released under the GNU/GPL License.