COMP 3007
Outline
Lectures
Assignments
Schedule
a5q1_family.pl
f liff b hhi ff bdhilbE
.woleb stnemeriuqer eht llfiluf yeht sa gnol os ,noitcfi -non ro noitcfi eb yam eert ylimaf taht fo srebmem ehT .
dellac elfi a ni eert ylimaf a dliub lliw uoy melborp siht roF ]skram 51[ 1 noitseuQ
mp55:11 @ ht11 lirpA yadnuS :euD !golorP
5# tnemngissA – 7003 PMOC
7003 PMOC EMOH
?stsissa 25 tsael ta sah ohw reyalp yna fo eman tsal eht si tahW .b ?noitisop tahw ni dna ,yalp namtraH nayR seod maet tahw nO .a
:snoitseuq gniwollof eht rewsna taht seireuq golorp etirW .lp.yekcoh_2q5a :stcaf fo esabatad gniwollof eht neviG ]latot skram 21[
2 noitseuQ .noitaler hcae tset ot stcaf hguone evah uoy taht erus ekaM
.snoitpmussa ruoy mrfinoc esaelp ,tbuod yna ni era uoy fI .snoitinfied cisab htiw kcits tsuJ .spihsnoitaler-pets tneuqesbus dna egairram-er dna secrovid ekil sgniht gnivlovni serutcurts ylimaf detacilpmoc htiw laed ot deriuqer ton era uoY .gnikram ni ycnetsisnoc rof spihsnoitaler evoba eht rof snoitinfied “lanoitidart” emussa esaelP
Y fo rotsecna na si X fi eurT % )Y,X(rotsecna Y fo rehtomdnarg a si X fi eurT % )Y,X(rehtomdnarg Y fo rehtafdnarg a si X fi eurT % )Y,X(rehtafdnarg snisuoc era Y dna X fi eurT % )Y,X(nisuoc )egairram yb ro egaenil yb( Y fo elcnu na si X fi eurT % )Y,X(elcnu )egairram yb ro egaenil yb( Y fo tnua na si X fi eurT % )Y,X(tnua rehtorb a sah X fi eurT % )X(rehtorb_sah retsis a sah X fi eurT % )X(retsis_sah sgnilbis era Y dna X fi eurT % )Y,X(sgnilbis
Y fo tnerap a si X fi eurT % )Y,X(tnerap :spihsnoitaler gniwollof eht enfied ot selur golorp etirW .b
Y ot deirram si X % )Y,X(deirram Y fo rehtom eht si X % )Y,X(rehtom Y fo rehtaf eht si X % )Y,X(rehtaf elamef si X % )X(elamef elam si X % )X(elam
:sesualc gniwollof eht rof eert ylimaf a fo srebmem eht htiw stcaf fo esabatad a hsilbatsE .a
length/2 sort/2
a5q3_lotto.pl
random_int/3
random/1 integer/1
? d it(520R) R7
¡úgE .etaciderp 3/neewteb_modnar ni-tliub eht esu ton yam uoY .]B,A[ egnar eht ni regetni modnar a snruter dna stnemugra sa B dna
A sregetni owt sekat taht etaciderp a etirW ]skram 2[ .a
,
, , :setaciderp ni-tliub lufesu dna dettimrep emoS .seulav doog emussa ton yam uoy tub ,dedivorp era sepyt tnemugra tcerroc eht emussa yam uoY .smelborp gniwollof eht ot snoitulos tset dna etirw dellac elfi a nI ]latot skram 41[
llarof ,slosndnfi ,fogab ,fotes ,lladnfi :melborp siht rof neddibrof era setaciderp ni-tliub gniwollof ehT .)skram 0 htrow si stluser gnidoc-drah ,.e.i( esab egdelwonk dedivorp eht morf noitamrofni tnaveler eht llup taht seireuq eb tsum snoitulos ruoY .)’;'( gnikcartkcab gnisu emit a ta eno evloser dluohs seireuq ruoy ,rewsna eno naht erom ni tluser dluohs taht snoitseuq roF .meht detset uoy nehw detareneg tuptuo eht htiw rehtegot ,esabatad eht ni stnemmoc sa seireuq ruoy edulcni ,noissimbus roF .seireuq ylno ,melborp siht rof selur etirw ot deen ton od uoY .”ecnefed” = d ,”gniw thgir” = wr ,”gniw tfel” = wl ,”ertnec” = c :swollof sa era snoitisop rof smroftrohs ehT
?reyalp ertnec etarucca tsom eht si ohW .h )stohs / slaog = ycarucca tohs
erehw( ?slaog tsael eht htiw reyalp eht fo ycarucca tohs eht si tahW .g )stsissa + slaog = stniop
erehw( ?)evisulcni( stniop 001 dna 09 neewteb evah sreyalp tahW .f ?maet emas eht no yalp sreyalp fo sriap tahW .e ?”xelA” eman tsrfi eht htiw reyalp a evah smaet tahW .d ?gniw tfel yalp sreyalp tahW .c
3 noitseuQ
:senilediuG emoS
?- random_int(5,20,R). R=7 range/3
?- range(3,8,L). L=[3,4,5,6,7,8] remove_nth/4
nth0 nth1
?- remove_nth(0,[1,2,3,4,5],A,B).
?- remove_nth(3,[a,c,d,c,l,m,n,o,p],Item,Rest).
Rest=[a,c,d,l,m,n,o,p]
select_random/3
?- select_random(4,[q,w,e,r,t,y,u,i,o,p],L). ?- select_random(4,[a,b,c],L). false.
lotto/1
?- lotto(L). [1,8,12,23,27,36,48]
a5q4_trees.pl
list/1
is_list
?- list([1,2,3]). True. ?- list(hello). False.
treeFlat/2
A=1, B=[2,3,4,5]
Item=c,
[e,o,w,u]
flatten
?- treeFlat([1,[2,3],[[4,[5]],6]],[1,2,3,4,5,6]).
True. ?- treeFlat([1,[2,3],[[4,[5]],6]], L). L = [1,2,3,4,5,6]
treeSum/2
T sretemarap owt sah hcihw ¡ú
etaciderp a etirW ]skram 3[ .c :.g.E
:.g.E ni-tliub eht esu ton yam uoY .T ni stnemele eht fo lla gniniatnoc tsil denettafl eht snruter dna tnemugra
¡ú
.rewsna ruoy ni etaciderp
sa T eert a sekat hcihw
etaciderp a etirW ]skram 4[ .b ¡ú
.)siht rof etaciderp
a si tnemugra eht fi sdeeccus taht
etaciderp a etirW ]kram 1[ .a
snoitulos tset dna tcurtsnoc
.smelborp gniwollof eht ot dellac elfi a nI ]latot skram 41[
euqinu 7 fo tsil a snruter taht ¡ú
etaciderp a etirW ]skram 2[ .e .g.E
:.g.E ni-tliub eht esu ton yam uoY( .tsil
¡ú .g.E .redro detros ni ]05,1[ egnar eht morf sregetni modnar
.g.E .L morf detceles stnemele modnar tnereffid N snruter dna stnemugra sa L tsil a dna
N regetni na sekat taht ¡ú
etaciderp a etirW ]skram 4[ .d
¡ú
.g.E ro ni tliub eht esu ton yam uoY( .meti devomer eht tuohtiw tsil gniniameR eht sa llew sa ,meti htN eht snruter dna stnemugra sa L tsil a
¡ú
dna N regetni na sekat taht etaciderp a etirW ]skram 3[ .c ¡ú .g.E .]B,A[ egnar eht ni sregetni lla fo tsil a snruter dna stnemugra sa
B dna A sregetni owt sekat taht etaciderp a etirW ]skram 3[ .b ¡ú .g.E
¡ú
.)setaciderp
4 noitseuQ
.g.E
?- treeSum([[1,[2,3]],4,[5,6,[7]]], S). 28 treeSmush/2
?- treeSmush([[a],[b],c,[d]], R). R = [[a,b],c,[d]]
?- treeSmush([[1,2],[3],4,[5,[6],[7]],[[8],9]], R).
[[1,2,3],4,[5,[6,7,8],9]].
R =
sumlist
:stamrof gniwollof eht fo eno ni detneserp eb yam golorP ni gnitset ruoY .noissimbus ruoy ni melborp hcae rof snur gnitset edulcni ot deriuqer era uoY
.detats esiwrehto sselnu detibihorp si seirarbil detropmi fo esU .detibihorp yllacfiiceps sselnu dewolla si setaciderp ni-tliub fo esU .yltcerroc ecruos eht etic tsum uoy tub tnemngissa eht ro erutcel ni dnuof txet ro edoc yna esu yam uoY .skram orez eviecer lliw dna ,noitatnemucod tneicffius etutitsnoc ton seod senilediug tnemngissa eht gnitsap dna gniypoc ,eton esaelP .AT suoreneg a si AT yppah a ;elbadaer ylisae dna dettamrof-llew si edoc ruoy taht erusnE .)sretemarap( tuptuo dna tupni detcepxe sti gnidulcni etaciderp hcae fo esoprup eht tnemucoD .selfi lla fo pot eht ta stnemmoc ni era rebmun tneduts dna eman ruoy taht erusnE
¡ú :.g.E
¡ú :.g.E .tsilbus eno otni degrem neeb evah stsilbus tnecajda owt yna hcihw ni eert a snruter dna tnemugra
sa T eert a sekat hcihw etaciderp a etirW ]skram 6[ .d
:.g.E .rewsna ni-tliub eht esu ton yam uoY .S rebmun eht slauqe T eert eht ni stnemele lla fo mus eht fi sdeeccus taht ,S dna
ruoy ni etaciderp
¡ú
noitatnemucoD gnitseT & noitatnemucoD
gnitseT
.txt
:-[filename]
tluafed rednu golorp-IWS gnisu( elbadaol ton era taht selfi edoc ynA noissimbuS
.lp.enola_semirp_gnitset :ereh dnuof eb nac ,elfi etarapes a ni gnitset tinu gnitartsnomed elpmaxe rehtonA .lp.semirp_gnitset :ereh dnuof eb nac )cfiiceps golorp-iws( gnitset tinu gnitartsnomed elpmaxe ralimis A .lp.semirp :ereh dnuof eb nac gnitset dna noitatnemucod gnidulcni noissimbus elpmaxe nA
.secnereffid yna rof snoitanalpxe dna tuptuo devresbo sa llew sa tuptuo detcepxe gnivig ,yhw dna gnitset era uoy tahw ot sa gnitset ruoy tnemmoC :secitcarp tseb roF .skram orez eviecer lliw dna ,gnitset tneicffius etutitsnoc ton seod snur elpmaxe dedivorp eht gnitsap dna gniypoc ,eton esaelP etairporppa erehw euqinu eb ot detcepxe era sesac tset ruoY .noitseuq a rof skram 0 ni tluser lliw stuptuo tset detacirbaF .epyt tcerroc eht fo era deilppus stupni emussa yam uoy ,defiiceps esiwrehto sselnU .edoc ruoy fo sehcnarb elbissop lla dna stupni dilav lla revoc dluohs tub ,dnah ta noitseuq eht no dneped deriuqer stset cfiiceps ehT
.si gnitset ruoy erehw dna tahw ot sa raelc eb tsuJ .stamrof xim ot hsiw yam uoy os ,tamrof hcae ot snoitatimil era ereht :etoN
.elfi tegrat eht tlusnoc ot )setouq tuohtiw( ” ” enil eht sa llew sa ,detucexe eb ot sesac tset citamotua eht ,noitseuq hcae rof elfi etarapes a ni edulcnI .xatnys gnitset tinu s’golorp-iws gnisu detucexe eb ot sesac tset citamotua eht ,elfi hcae fo mottob eht ta edulcnI .nur gnitset launam hcae rof )sesnopser dna seireuq( snoitcaretni eht fo ypoc a sedulcni taht noitseuq rep elfi etarapes a noissimbus ruoy ni edulcnI
]latoT skram 5[
.senilediug noissimbus lla rof eniltuo esruoc eht ees esaelP .ylppa lliw snoitcuded etal sdrawretfa ,etad eud eht erofeb em tcatnoc ,noissimbus htiw seussi gnivah era uoy fI .yllufsseccus detelpmoc si noissimbus eht taht GNIRUSNE dna selfi lla gnittimbus rof elbisnopser era uoY .snoissimbus etal rof detcuded eb lliw skraM .etad eud eht erofeb nraeLuc gnisu tnemngissa ruoy timbuS .noissimbus ruoy rof elfi piz. elgnis a otni selfi lla enibmoC .elfi nevig eht ni snoitulos yna rof orez fo kram a ni tluser lliw stropmi fo esu deticilosnU .detats esiwrehto sselnu seirarbil lanretxe yna esu ton oD .snoitseuq detceffa eht rof orez fo edarg a ni tluser lliw snoitnevnoc gniman debircserp eht wollof ot eruliaF .noissimbus ruoy rof seman noitcnuf dna elfi dedivorp lla dna yna esu tsum uoY .noitseuq taht rof 0 fo kram a ni tluser lliw )snoitidnoc tluafed rednu golorp IWS gnisu( elbadaol ton era taht selfi edoc ynA