in virtù degli orari usciti apro il 3d del corso.
Benvengano consigli da chi ha già sostenuto l'esame.
- VanillaSky
- Ingegneria Informatica - Triennale
- Giovedì, 22 Febbraio 2007
- Subscribe via email
Comment
There are no comments made yet.
Accepted Answer
Pending Moderation
Io la penso come voi...
Ma di 'sta roba è il primo (secondo contando quello di Stellato) esempio che vedo... Ed è tardi...
Disegnandolo con gli insiemi, "senza patente" è una sottoclasse di una restrizione su "commessoReato"...
Quindi non vedo come inferire qualcosa in "senza patente"... :?
Ma di 'sta roba è il primo (secondo contando quello di Stellato) esempio che vedo... Ed è tardi...
Disegnandolo con gli insiemi, "senza patente" è una sottoclasse di una restrizione su "commessoReato"...
Quindi non vedo come inferire qualcosa in "senza patente"... :?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 181
, L2) :-
\+ (member(H1, L2)),
no_common_elem(R1, L2).
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 182
E questa come vi pare???
max_list([X],X).
max_list([H,L|Rest],H):-
H>=L,
max_list([H|Rest],H).
max_list([H,L|Rest],H):-
H<L,
max_list([L|Rest],L).
max_list([X],X).
max_list([H,L|Rest],H):-
H>=L,
max_list([H|Rest],H).
max_list([H,L|Rest],H):-
H<L,
max_list([L|Rest],L).
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 183
Mamma mia non funziona assolutamente...
Scrive il primo elemento della lista...
O mio Dio...
Scrive il primo elemento della lista...
O mio Dio...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 184
ragno, questo ti dà sempre il primo elemento della lista.
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 185
Non vedo dove...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 186
Accepted Answer
Pending Moderation
E questa come vi pare???
[code type="markup"]max_list([X],X).
max_list([H,L|Rest],H):-
H>=L,
max_list([H|Rest],H).
max_list([H,L|Rest],H):-
H<L,
max_list([L|Rest],L).[/code]
Ti dico la verità... Non ho il tempo per ragionarci su...
Ma dandolo in pasto all'SWI-Prolog NON restituisce il massimo della lista...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 187
Infatti non capisco neanche io.
A dire il vero, mi vergogno un po' a dirlo, un errore simile l'avevo fatto quando ho provato a scrivere il predicato "lenght".
Io l'ho scritto così:
lenght([],0).
lenght([Y|U],N):-
M is N + 1,
lenght([U],M).
Mentre la versione corretta è:
lenght([],0).
lenght([Y|U],N):-
lenght([U],M),
M is N + 1.
Qualcuno sa dirmi il perchè???
Lo stesso vale per max_list.
Perchè la condizione di > o < è posta DOPO aver richiamato ricorsivamente la procedura???
A dire il vero, mi vergogno un po' a dirlo, un errore simile l'avevo fatto quando ho provato a scrivere il predicato "lenght".
Io l'ho scritto così:
lenght([],0).
lenght([Y|U],N):-
M is N + 1,
lenght([U],M).
Mentre la versione corretta è:
lenght([],0).
lenght([Y|U],N):-
lenght([U],M),
M is N + 1.
Qualcuno sa dirmi il perchè???
Lo stesso vale per max_list.
Perchè la condizione di > o < è posta DOPO aver richiamato ricorsivamente la procedura???
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 188
Accepted Answer
Pending Moderation
Questo discorso dell'ordine l'avevamo notato...
Io penso che dipenda dal fatto che valuti quelle condizioni in AND dalla prima all'ultima...
E NON riesca quindi ad assegnare un valore ad N, non sapendo quanto vale M, fino a che non chiude l'ultima chiamata ricorsiva...
Comunque non mi sembra giusta quella length scritta così...
M ed N mi sembrano proprio scambiati, in entrambi i casi... :?
Io penso che dipenda dal fatto che valuti quelle condizioni in AND dalla prima all'ultima...
E NON riesca quindi ad assegnare un valore ad N, non sapendo quanto vale M, fino a che non chiude l'ultima chiamata ricorsiva...
Comunque non mi sembra giusta quella length scritta così...
M ed N mi sembrano proprio scambiati, in entrambi i casi... :?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 189
Ok, ok, ho detto una baggianata.
Lenght funziona ugualmente.
Non capisco comunque la max_of_a_list:
max_of_a_list( [Head|Rest], Head) :-
max_of_a_list( Rest, Max ),
Head > Max.
Che diamine di procedimento fa?
Lenght funziona ugualmente.
Non capisco comunque la max_of_a_list:
max_of_a_list( [Head|Rest], Head) :-
max_of_a_list( Rest, Max ),
Head > Max.
Che diamine di procedimento fa?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 190
Accepted Answer
Pending Moderation
esempio di marco79:
possiedemacchina è InversaFunzionale ==> dominio diventa identificatore ===> quindi se ho il nome di una Persona so esattamente quale macchina ha (in questo esempio quindi una Persona non può avere più di due macchine ==> le due macchine sono la stessa cosa ===> Pino e Mario SONO le stesse persone.
possiedemacchina è InversaFunzionale ==> dominio diventa identificatore ===> quindi se ho il nome di una Persona so esattamente quale macchina ha (in questo esempio quindi una Persona non può avere più di due macchine ==> le due macchine sono la stessa cosa ===> Pino e Mario SONO le stesse persone.
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 191
Accepted Answer
Pending Moderation
THIS IS CONFUSION!!!
La "lenght" come l'hai scritta, ragno nero docet, non funziona, nemmeno nella versione "corretta"...
[size=2]Almeno io ho visto questo, con i miei occhi...[/size]
La "lenght" come l'hai scritta, ragno nero docet, non funziona, nemmeno nella versione "corretta"...
[size=2]Almeno io ho visto questo, con i miei occhi...[/size]
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 192
Si scusate, mi sono sbagliato invertendo le variabili.
Ma che mi dite del predicato max???
Ma che mi dite del predicato max???
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 193
Accepted Answer
Pending Moderation
Si scusate, mi sono sbagliato invertendo le variabili.
Ma che mi dite del predicato max???
Il predicato per il massimo lavora come tutti i predicati sulle liste...
Conoscendo il massimo di una lista...
Aggiungendo a questa un elemento (la testa), il nuovo massimo sarà aggiornato, solo se la testa è maggiore del "vecchio massimo"...
Il problema è che non capisco perché non basti questa condizione... :?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 194
Adesso provo un'altra versione di max_of_a_list...
max_of_a_list(List,X):-
sort(List,SortedList),
last_elem(SortedList,M),
X is M.
sort e last_elem prima ordinano la lista e poi prendono l'ultimo elemento...
max_of_a_list(List,X):-
sort(List,SortedList),
last_elem(SortedList,M),
X is M.
sort e last_elem prima ordinano la lista e poi prendono l'ultimo elemento...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 195
Quindi, richiamando la procedura, è come se stabilissi due massimi.
Continua finchè il primo max è maggiore del secondo.
In caso contrario, passa ad esaminare l'altro max.
E' così?
Continua finchè il primo max è maggiore del secondo.
In caso contrario, passa ad esaminare l'altro max.
E' così?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 196
Accepted Answer
Pending Moderation
se ti può essere di aiuto ti posto la mia procedura:
maxlist([],N).
maxlist([H|[]],H).
maxlist([H|[J|T]],MAX) :- H < J , maxlist([J|T],MAX).
maxlist([H|[J|T]],MAX) :- H >= J, maxlist([H|T],MAX).
maxlist([],N).
maxlist([H|[]],H).
maxlist([H|[J|T]],MAX) :- H < J , maxlist([J|T],MAX).
maxlist([H|[J|T]],MAX) :- H >= J, maxlist([H|T],MAX).
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 197
Effettivamente non è troppo diversa da quella che avevo in mente...
La riga
maxlist([H|[J|T]],MAX)
funziona, mentre la mia
maxlist([H,J|T]],MAX)
evidentemente no...
Grazie comunque...
La riga
maxlist([H|[J|T]],MAX)
funziona, mentre la mia
maxlist([H,J|T]],MAX)
evidentemente no...
Grazie comunque...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 198
Accepted Answer
Pending Moderation
esempio di marco79:
possiedemacchina è InversaFunzionale ==> dominio diventa identificatore ===> quindi se ho il nome di una Persona so esattamente quale macchina ha (in questo esempio quindi una Persona non può avere più di due macchine ==> le due macchine sono la stessa cosa ===> Pino e Mario SONO le stesse persone.
ok fin qui siamo d'accordo, ma invece cosa mi sai dire sulle istanze inferibili di senza patente?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 199
Accepted Answer
Pending Moderation
ok fin qui siamo d'accordo, ma invece cosa mi sai dire sulle istanze inferibili di senza patente?
Dico che non ce ne sono! L'ontologia mi pare (volutamente) fatta male, sappiamo che "senza patente" è un sottoinsieme di commessoreato, ma non c'è scritto da nessuna parte che "senza patente" è legato al "reatoautomobilistico"
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 200
There are no replies made for this post yet.
Be one of the first to reply to this post!
Be one of the first to reply to this post!
Please login to post a reply
You will need to be logged in to be able to post a reply. Login using the form on the right or register an account if you are new here. Register Here »