Sunteți pe pagina 1din 1

Problema:

Sa se scrie un program care transforma cifrele in cuvinte. De exemplu, 1,7,5 trebuie scris unu-sapte-cinci.

cuvinte(0) :- !, write(zero), nl.

cuvinte(N) :- integer(N), N > 0, cuvinte1(N), nl.

cuvinte1(0) :- !.

cuvinte1(N) :- N > 0,

Q is N // 10, R is N mod 10,

cuvinte1(Q), nr_cuvant(R,RW), liniuta(Q), write(RW).

liniuta(0) :- !.

liniuta(Q) :- Q > 0, write('-').

nr_cuvant(0,zero).

nr_cuvant(1,unu).

nr_cuvant(2,doi).

nr_cuvant(3,trei).

nr_cuvant(4,patru).

nr_cuvant(5,cinci).

nr_cuvant(6,sase).

nr_cuvant(7,sapte).

nr_cuvant(8,opt).

nr_cuvant(9,noua).

Intrebam prologul: Cum va fi scris numerele (1,2,3,4,5) in cuvinte?


cuvinte(12345).
Raspunsul Prologului va fi:

unu-doi-trei-patru-cinci

S-ar putea să vă placă și