Turbo Prolog
Turbo Prolog
Turbo Prolog
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Table 8-4 The Computer as Piano<br />
Note Frequency<br />
C (low) 131<br />
C sharp 139<br />
D 147<br />
D sharp 156<br />
E 165<br />
F 175<br />
F sharp 185<br />
G 196<br />
G sharp 208<br />
A 220<br />
A sharp 233<br />
B 247<br />
C (middle) 262<br />
Keyboard Character<br />
1* Program L;1 *1<br />
predicates<br />
piano<br />
tone(char,integer)<br />
goal<br />
piano.<br />
clauses<br />
piano:readchar(Note),tone(Note,Freq),sound(S,Freq),piano.<br />
A<br />
W<br />
S<br />
E<br />
D<br />
F<br />
T<br />
G<br />
y<br />
tone('a',131). tone('w',139). tone('s',1L;7).<br />
tone('e',1Sb). tone('f',17S). tone('t',1BS).<br />
tone('g',19b). tone('y',20B). tone('h',220).<br />
tone('u',233). tone('j',2L;7). tone('k',2b2).<br />
tone(_,SOOO). I*all other keys squeak *1<br />
Program 42 plays the nursery rhyme Jock and Jill by running up and down musical<br />
scales.<br />
1* Program L;2 *1<br />
domains<br />
direction=up;down<br />
predicates<br />
jack_and_jill(direction,integer)<br />
goal<br />
jack_and_jill(up,SOO).<br />
clauses<br />
jack_and_jill(up,F):<br />
FSOO,!,sound(1,F),F1=F-200,jack_and_jill(down,F1).<br />
jack_and_jill(down,F):jack_and_jill(up,F).<br />
H<br />
U<br />
J<br />
K<br />
Tutorial VI: Graphics and Sound 97