.


:




:

































 

 

 

 


9




Ͳ Dz

.

 

9.1. .

. , , . . not. :

 

goal: run.

Has it hair?

Yes

does it eat meat?

Yes

has it a fawn color?

Yes

has it dark spots?

Yes

Your animal may be a (an) cheetah!

 

. , - . 9.1.

 

Database

Xpositive(symbol, symbol)

Xnegative(symbol, symbol)

 

Predicates

Animal_is(symbol)

It_is(symbol)

Ask(symbol, symbol, symbol)

Remember(symbol, symbol, symbol)

Positive(symbol, symbol)

Negative(symbol, symbol)

Clear_facts

Run

 

Clauses

animal_is(cheetah):- it_is(mammal),

It_is(carnivore),

Positive(has, tawny_color),

Positive(has, dark_spots).

animal_is(tiger):- it_is(mammal),

It_is(carnivore),

Positive(has, tawny_color),

Positive(has, black_stripes).

animal_is(giraffe):- it_is(ungulate),

Positive(has, long_neck),

Positive(has, long_legs),

Positive(has, dark_spots).

animal_is(zebra):- it_is(ungulate),

Positive(has,black_stripes).

 

animal_is(ostrich):- it_is(bird),

Negative(does, fly),

Positive(has, long_neck),

Positive(has, long_legs),

Positive(has, black_and_white_color).

 

animal_is(penguin):- it_is(bird),

Negative(does, fly),

Positive(does, swim),

Positive(has, black_and_white_color).

animal_is(albatross):-

It_is(bird), positive(does, fly_well).

it_is(mammal):- positive(has, hair).

it_is(mammal):- positive(does, give_milk).

it_is(bird):- positive(has, feathers).

it_is(bird):- positive(does, fly),

Positive(does,lay_eggs).

it_is(carnivore):- positive(does, eat_meat).

 

it_is(carnivore):- positive(has, pointed_teeth),

Positive(has, claws),

Positive(has, forward_eyes).

it_is(ungulate):- it_is(mammal),

Positive(has, hooves).

it_is(ungulate):- it_is(mammal),

Positive(does, chew_cud).

positive(X, Y):- xpositive(X, Y),!.

positive(X, Y):- not(xnegative(X, Y)),

Ask(X, Y, yes).

negative(X, Y):- xnegative(X, Y),!.

negative(X, Y):- not(xpositive(X, Y)),

Ask(X, Y, no).

 

ask(X, Y, yes):-!,

write(X, " it ", Y, '\n'),

Readln(Reply),

frontchar(Reply, 'y', _),

Remember(X, Y, yes).

ask(X, Y, no):-!,

write(X, " it ", Y, '\n'),

Readln(Reply),

frontchar(Reply, 'n', _),





:


: 2015-10-01; !; : 372 |


:

:

. .
==> ...

1440 - | 1407 -


© 2015-2024 lektsii.org - -

: 0.01 .