03.06.2013 Views

Turbo Prolog

Turbo Prolog

Turbo Prolog

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!