14





Kontrolltöö 23.10.98

Lahendused

Lahendaja Märkused Hinne
Tanel Alumäe Lahendustes on arusaamatu jarglane(J, J) ja lauses findall(X, matk(L1, L2, [L1], 0, Pikkus, 1), LL) ei esitata X-le mingit tingimust, mille tõttu selle lause täitmisel tekib alati ületäitumine. 2
Elken Sven Kõik OK 5
Urmas Lipso Lahenduses lause vanim(Kes):- not(lapsed(_,Kes)) tekitab vea, kui isiku Kes kohta ei ole ühtegi lauset lapsed(_,Kes), siin peaks kasutama not(clause(lapsed(_,Kes))). Sugulaste leidmine kõigi järglaste nimistute ühisosa abil on ERITI keeruline, palju lihtsam oleks algul määrata kahekohaline predikaat kahe isiku suguluse kindlakstegemiseks (neil on mingi yhine esivanem) ja siis findall-i abil leida nimistu antud isiku sugulastest. kordseid töötab korrektselt. Kolmanda ylesande lahenduses on arusaamatu, miks tyhja liidetava korral on tehtud rekursioon (nagunii saadakse lõpuks tulemuseks teine liidetav) 5
Ants Torim Lahendused: 1. - OK,
2. - algul tuleb õige lahendus, kuid siis hakkavad tulema järjest suuremad ja suuremad kordsused ;-)))
3. -OK.
Vaid kolmas lahendus kasutab util.plm-s määratud funktsiooni length; selle konsulteerimine esimeses ja teises ei ole vajalik!
5-
Valeri Putskov Lahendused: 1. - OK
2., 3. - puuduvad - vähe!
2
Kalev Sullakatko Lahendustes jarglasteks loetakse vaid lapsed ja meessoost isikuid, kes ei ole pojad, ei leita; teine töötab, ainult P2 = [N | Pooratud], pooraja(Nimistu,P2,Tulem) asemel oleks lihtsam pooraja(Nimistu,[N | Pooratud], Tulem); kolmandat pole. 3
Jaanus Vapper Lahendused:
1. - meesoost isikuid, kelle pojaksolemist pole teada, ei leita;
2. - OK;
3. - predikaatleia_tee läheb esimese tee leidmise järel tsüklisse (hakkab seda teed kordama), sellepärast ei tööta ka predikaat leia
4
Sven Süld Lahendused:
1. - meesoost isikuid, kelle pojaksolemist pole teada, ei leita; järglasteks loetakse vaid pojad ja tytred, kuid lapselapsed enam ei ole järglased???
2. - nimistu tagurpidi pööramine - OK;
3. - ei tööta, siin on mitmed probleemid (vt teksti lisatud kommentaari)
2


Küsimused, probleemid:
jaak@cc.ttu.ee

Tagasi loengute sisukorra juurde