Translating a list of numbers
- From: Slobodan Blazeski <slobodan.blazeski@xxxxxxxxx>
- Date: Sun, 20 Jan 2008 06:50:33 -0800 (PST)
Hi group
I'm common lisp programmer that started learning prolog this thursday.
I'm using book learn prolog now, nice book but lacks solutions for
selfstudy, and everything was going smooth untill I got stuck at
Exercise 4.2. I really can not think of any way how to make the
translation and that frustrates me. Any help for this task or show me
something simigliar like how to use translating fact into unification
will be highly appreciated?
thanks
Slobodan
Exercise 4.2 Suppose we are given a knowledge base with the following
facts:
tran(eins,one).
tran(zwei,two).
tran(drei,three).
tran(vier,four).
tran(fuenf,five).
tran(sechs,six).
tran(sieben,seven).
tran(acht,eight).
tran(neun,nine).
Write a predicate listtran(G,E) which translates a list of German
number words to
the corresponding list of English number words. For example:
listtran([eins,neun,zwei],X).
should give:
X = [one,nine,two].
Your program should also work in the other direction. For example, if
you give it the
query
listtran(X,[one,seven,six,two]).
it should return:
X = [eins,sieben,sechs,zwei].
Hint: to answer this question, first ask yourself 'How do I translate
the empty list of
number words?'. That's the base case. For non-empty lists, first
translate the head of
the list, then use recursion to translate the tail.
.
- Follow-Ups:
- Re: Translating a list of numbers
- From: John Thingstad
- Re: Translating a list of numbers
- From: Nick Wedd
- Re: Translating a list of numbers
- From: Markus Triska
- Re: Translating a list of numbers
- From: Cesar Rabak
- Re: Translating a list of numbers
- Prev by Date: Re: Building token lists in SWI
- Next by Date: Re: Translating a list of numbers
- Previous by thread: Building token lists in SWI
- Next by thread: Re: Translating a list of numbers
- Index(es):
Relevant Pages
|
|