Tisztelt tanár úr!
A programom két teszten hibás eredményt adott a tesztrendszer szerint,
de a megadott eseteket itthon lefuttatva nekem helyesnek tűnik a
megoldás.
Szeretném a segítségét kérni hogy hol keressem a bajt.
7. teszteset, idõlimit = 5 sec
---------------------------------
% loading /ets/ets/guts/hwks/09s/nlp1/JozsefDaniel.KIP30T/nlpeval.ql...
% module dp_test imported into user
Goal: sat(X*X=:=Y), all solutions in [X,Y]:
expected 1 solution: [A,A],
got 1 solution: [A,B]
test failed
>>>>> A program lefutott, a megoldás HIBÁS.
Ugyanez nálam:
| ?- sat(X*X=:=Y).
prolog:trig_ground(X,[],[X],_A,_B),
prolog:trig_ground(X,[],[X],_A,_C),
prolog:trig_or([_B,_C,_D],_A,_A),
prolog:when(_A,(ground(X);ground(X);ground(Y)),user:and(X,X,Y)),
prolog:trig_ground(Y,[],[Y],_A,_D) ? ;
no
| ?- sat(X*X=:=Y), labeling([X,Y]).
X = 1,
Y = 1 ? ;
X = 0,
Y = 0 ? ;
no
Ez jónak tűnik... Felesleges választási pontokat sem látok...
9. teszteset, idõlimit = 5 sec
---------------------------------
% loading /ets/ets/guts/hwks/09s/nlp1/JozsefDaniel.KIP30T/nlpeval.ql...
% module dp_test imported into user
Goal: sat(X+Y=:=Z),X=Y, all solutions in [X,Y,Z]:
expected 1 solution: [A,A,A],
got 1 solution: [A,A,B]
test failed
>>>>> A program lefutott, a megoldás HIBÁS.
Nálam:
| ?- sat(X+Y=:=Z), X=Y.
Y = X,
prolog:trig_ground(X,[],[X],_A,_B),
prolog:trig_or([_B,_C,_D],_A,_A),
prolog:when(_A,(ground(X);ground(X);ground(Z)),user:or(X,X,Z)),
prolog:trig_ground(Z,[],[Z],_A,_D),
prolog:trig_ground(X,[],[X],_A,_C) ? ;
no
| ?- sat(X+Y=:=Z), X=Y, labeling([X,Y,Z]).
X = 1,
Y = 1,
Z = 1 ? ;
X = 0,
Y = 0,
Z = 0 ? ;
no
Ez lényegében ugyanaz a feladat mint az előző, itt sem látok hibát...
Köszönettel,
József Dániel
Üdvözletem!
Az ETS sajnos nem elérhető...
Failed to Connect
The connection was refused when attempting to contact
sintagma.szit.bme.hu:4321
Though the site seems valid, the browser was unable to establish a
connection.
Egy órával a házi beadás előtt ez elég csúnya dolog... :) Szerintem ezért
még holnapig járnia kéne a 2 pontnak... :D
József Dániel
Hello,
A kisháziban megadott count/2 eljárás b. és c. extra funkciónak
megvalósításához (elegendő számú behelyettesített egyes/nulla után a lista
többi elemét megfelelően leköti) jól jönne némi segítség. Úgy gondoltam,
hogy valamiféle akkumulátor változóban kéne növelni az egyesek/nullák
számát, amikor egy-egy daemon felébred, de hogy ezt a változót hogyan
lehetne megfelelően megosztani, nem világos. Esetleg egyáltalán nem így kéne
nekikezdeni a problémának? Bármiféle tippet megköszönnék.
~ pkt
Helló!
A házifeladat ellenőrző script még mindig nem működik!
Üdv:
G.L.
2009/3/6 <ets-adm(a)inf.bme.hu>:
> Tesztnapló
> ----------
>
> A hallgató neve és azonosítója: GardonyiLaszloAndras.SSOCKT
> A program verziószáma: 2
> A teszt időpontja: március 6. 17:51
> A tesztet futtató hoszt: sintagma.szit.bme.hu
>
> A Prolog program tesztelése
> ---------------------------
>
> A házi feladat fordítása folyamatban...
> ./build-hw: line 4: exec: sicstus: not found
> A fordítás nem sikerült!