ceng111
TRANSCRIPT
-
EEBM7UK, Ankara, 1998
%/*6$@GH
VWDQGDUW ELU PIUHGDW PRGHOL ROXWXUPD oDEDODUQQ
\HQL ELU UQ >@GH \HU DOPDNWDGU hQLYHUVLWH\H \HQL
EDOD\DQ |UHQFLOHULQ %%0 DODQQGD DOGNODU LON NUHGLOL
GHUVLQ NDSVDPQQ QH ROPDV YH QDVO ELU \DNODPOD
YHULOPHVL JHUHNWLL DNDGHPLN oHYUHOHUGH \RXQ RODUDN
WDUWOPDNWDGU %X ELOGLUL\H NRQX RODQ JLUL GHUVL >@GH
nerilen modelle uyumludur.
%X ELOGLULGH GLOH JHWLULOHQ J|UOHUL VRPXWODWUPDN
DPDF\OD |UHQFLOHULPL]LQ HY |GHYL RODUDN o|]GNOHUL
ELU SUREOHPGHQ \DUDUODQDFD] 3UREOHP nxnOLN ER ELUVDWUDQo WDKWDVQ HQ oRN k tane at kullanarakNDSODPDNWU 7DKWD ]HULQH NRQXODQ ELU DWQ EXOXQGXX
YH WHKGLW HWWLL NDUHOHU NDSODQP VD\OPDNWDGU $WODUQ
ELUELULQL WHKGLW HGLS HWPHPHVL |QHPOL GHLOGLU %X
SUREOHP LoLQ 6FKHPH GLOLQGH \D]OP ELU SURJUDP
HNLO GH VXQXOPDNWDGU 6XQXODQ NRG ELU |UHQFLQLQ
|GHYLQGHQ ED] ELoLPVHO GHLLNOLNOHU \DSODUDN
X\DUODQPWU .XOODQODQ \|QWHP backtracking HVDVQDGD\DQPDNWDGU %DDUV]ONOD VRQXoODQDQ DGP JHUL
DOQPDNWD YH EDND ELU DOWHUQDWLI GHQHQPHNWHGLU
*LUL 'HUVL 1HOHUL $PDoODPDO" .DSVDP 1H
2OPDO"
gUHQFL\H ND]DQGUPDN LVWHGLLPL] \HWHQHNOHU NVDFD
YHULOHQ ELU SUREOHP EHOLUWLPLQL DQODPD SUREOHPL GHLLN
soyutlama dzeylerinde analiz etme, alternatifzmler retme, bu zmleri bilgisayar zerindeVQDPD YH EX VQDPDQQ VRQXoODUQ GHHUOHQGLUPH
\HWHQHNOHULGLU 'DKDV |UHQFL EX oDOPD LoLQGH
\DUDWFON \|QQ NXOODQPDO ]LKLQVHO \HWHQHNOHULQL
]RUODPDO \DSW LWHQ ]HYN DOPDO YH HLWLP KD\DWQQ
EXQGDQ VRQUDNL DDPDODU LoLQ PHUDN YH KHYHVL
X\DQPDOGU
gUHQFL NDUODW ELU SUREOHPL oRN VD\GD NoN
DGPODU DWDUDN GHLO D] VD\GD E\N DGPODU DWDUDN
o|]PH\H oDOPDOGU gUQHLQ WDKWDQQ EHOLUOL ELU
NDSODQPD NRQILJUDV\RQXQGDQ \HQL ELU DWQ
NRQXOPDV\OD EDND ELU NRQILJUDV\RQD JHoLL WHN ELU
LOHP DGP RODUDN GQHELOPHOL YH EX ILNUL GRUXGDQ
LIDGH HGHELOPHOLGLU 2 KDOGH |UHQFL\H YHUHFHLPL]
DUDo RQXQ E\N DGPODU DQODPO DOWSUREOHPOHULQ
o|]POHUL RODUDN D\U D\U LIDGH HWPHVLQL YH EXQODU
\DSD\ HQJHOOHUH PDUX] NDOPDGDQ DNF ELU HNLOGH
ELUOHWLUPHVLQL NROD\ODWUPDOGU .VDFD |UHQFLQLQ
VHQWH] \DSPD \HWHQHLQL DUWWUDQ ELU DUDo
istenmektedir.
*LUL GHUVLQLQ ELU SURJUDPODPD GHUVLQH EXQXQ GD
bir programlama dilinde kodlama dersineLQGLUJHQPHVLQH NDU\] gUHQFLOHULPL]H JQON
KD\DWODUQGD NDUODDFDNODU WHNQRORML\L LOHULGH
DODFDNODU GHUVOHUH VNoD J|QGHUPH \DSDUDN GD ROVD
WDQWPDN GXUXPXQGD\] 'HUVLQ ELU NVP EX QHGHQOH
|UHQFL\L EL]]DW NXOODQG YH\D VNoD EDKVLQL GX\GXX
teknolojiler konusunda bilgilendiren bir genel kltrGHUVL KDOLQGH LOHQPHOLGLU
gUHQFLOHUH ND]DQGUPD\ DPDoODGP] WHPHO
NDYUDPODU XQODUGU DOJRULWPD ELU DOJRULWPDQQ ]DPDQ
YHULPOLOLL |]\LQHOHPH\OH IRQNVL\RQ WDQP
IRQNVL\RQODU ]HULQGH LOHP \DSPD \RUGDPVDO
soyutlama, veri tipi soyutlama, zyinelemeli veri\DSODU %X NDYUDPODU YHULUNHQ IRQNVL\RQHO
SURJUDPODPD SUDWLLQGHQ \DUDUODQOPDO YH |UHQFLOHULQ
EX NDYUDPODU KLVVHWPHOHUL YH NXOODQPDODU
VDODQPDOGU
-
EEBM7UK, Ankara, 1998
3URJUDPODPD GLOL SUREOHPLQ GQ\DV LOH ELOJLVD\DUQ
GQ\DVQ ELUELULQH EDOD\DQ ELU RUWDP VXQDU 'LO
LOHPFLVL EX EDODQWQQ JHUHNWLUGLL oHYLUL YHYH\D
\RUXPODPD LOHYOHULQL \HULQH JHWLULU 'LOLQ SUREOHP
GQ\DVQD \DNQ ROPDV ELU \DQGDQ o|]P
\|QWHPLPL]L LIDGH HWPHPL]L YH EXQX GLHU LQVDQODUD GD
LOHWPHPL]L NROD\ODWUUNHQ |WH \DQGDQ ELOJLVD\DU
ND\QDNODUQ HQ YHULPOL HNLOGH NXOODQPDP]
]RUODWUU 'LOLQ ELOJLVD\DUQ GQ\DVQD \DNQ ROPDV
LVH WHUVLQH ELU HWNL \DUDWU %X WDUWPD NDSVDPQGD
\HOSD]HQLQ DOW XFXQGD ELUOHWLULFL GLOOHULQL VW XFXQGD
LVH NVW SURJUDPODPD GLOOHULQL GQHELOLUL] %LOJLVD\DU
ND\QDNODUQ YHULPOL HNLOGH NXOODQPDN ELUoRN
endstriyel uygulama iin kritik neme sahiptir vePKHQGLVOLN HLWLPLQLQ EXQX J|]DUG HWPHVL
GQOHPH] $QFDN EDODQJo G]H\LQGH YHULPOLOLN
NDYUDPQQ DVLPWRWLN DQODP\OD VQUO WXWXOPDV
\HWHUOLGLU ON GLOLQ \HOSD]HQLQ DOW XFXQD \DNQ LPSHUDWLI
ELU GLO ROPDV %DVLF 3DVFDO )RUWUDQ & YE |UHQFLQLQ
VR\XW GQPH JFQ NVWOD\F ELU HWNL \DSPDNWDGU
oQN |UHQFL SUREOHPLQ o|]PQ GN VR\XWODPD
G]H\LQGHNL LOHPOHU FLQVLQGHQ LIDGH HWPH\H
]RUODQPDNWDGU
-
EEBM7UK, Ankara, 1998
|UHQFLOHU GLOLQ \D]P NXUDOODUQ ]DKPHWVL]FH
|UHQPHNWHGLUOHU ON GHUV VDDWLQLQ VRQXQGD EDVLW
PDWHPDWLNVHO KHVDSODPDODU \DSDU GXUXPD
JHOPHNWHGLUOHU 'DKD VRQUD GLOLQ ELU |]HOOLL WDQWOUNHQ
EXQD LOLNLQ V|]GL]LP \DSV |UHQFLOHUL
DUWPDPDNWDGU oQN VHQWDNV GLOL WDVDUOD\DQODUQ
HVWHWLN DQOD\QD EDO WHUFLKOHUOH GHLO PLQLPDOLVW
LONH\H J|UH EHOLUOHQPHNWHGLU 9HUL WLSOHULQLQ VDGHOLL YH
GLQDPLN RODUDN GHQHWOHQPHVL GLO LOHPFLVLQLQ K]
JHUHN GLO LOHPFLVLQLQ UHWLL NRGXQ K]OO JHUHNVH GLO
LOHPFLVLQLQ NHQGL LLQL GDKD K]O YH NROD\ \DSPDV
DQODPQGD ND\JVQGDQ ND\QDNODQDQ D\UPODUOD
|UHQFLQLQ NDIDVQQ PHJXO HGLOPHPHVLQL
VDODPDNWDGU gUQHLQ |UHQFLQLQ WDPVD\ UHHO VD\
D\UPQ |UHQPHVL GHLNHQOHULQL EXQD J|UH
WDQPODPDV YH EX IDUN KHU DQ NDIDVQGD FDQO
WXWPDV VD\VDO KDVVDVL\HW V|] NRQXVX ROPDGNoD
gerekmemektedir. te yandan prefix notasyonuLOHoOHULQ |QFHOLN YH ELUOHPH |]HOOLNOHULQL KDWUGD WXWPD
VRUXQXQX RUWDGDQ NDOGUPDNWDGU .VDFD ]RUXQOX ELU
nedeni olmayan, sadece konvansiyon olarak|UHQLOPHVL JHUHNHQ NXUDOODU HQ D]D LQGLUJHQPLWLU
%|\OHFH |UHQFL WP GLNNDWLQL o|]P \|QWHPLQLQ
PDWHPDWLNVHO |]QH \RUGDPVDO ELU EDN DoV\OD
yneltebilmektedir.
(WNLOHLPOL RUWDP 'LOLQ JHUoHNOHWLULPLQGH VNoD
L]OHQHQ \RO \RUXPODPDGU (length aciklar) (* 9 k)) 'basarisiz)
((null? hamleler) 'basarisiz) (else (let ((alt-cozum (yerlestir (- k 1) (kalan aciklar (car hamleler)) (cdr hamleler)))) (if (equal? alt-cozum 'basarisiz) (yerlestir k aciklar (cdr hamleler)) (cons (car hamleler) alt-cozum))))))
; 'konum' konumuna bir atin konulmasindan; sonra acik 'kalan' kareler:(define (kalan aciklar konum) (let ((kapali (kapat konum))) (filter (lambda (a) (not (member a kapali))) aciklar)))
; 'konum' karesindeki atin kapattigi; kareler:(define (kapat konum) (let ((sutun (car konum)) (satir (cdr konum))) (list konum (cons (- sutun 1) (- satir 2)) (cons (- sutun 1) (+ satir 2)) (cons (+ sutun 1) (- satir 2)) (cons (+ sutun 1) (+ satir 2)) (cons (- sutun 2) (- satir 1)) (cons (- sutun 2) (+ satir 1)) (cons (+ sutun 2) (- satir 1)) (cons (+ sutun 2) (+ satir 1)))))
;;; Destekleyici Fonksiyonlar; l1 ve l2 kmelerinin kartezyen carpimi:(define (carp l1 l2) (if (empty? l1) '() (append (map (lambda (s) (cons (car l1) s)) l2) (carp (cdr l1) l2))))
; [p,q] tamsayi araligini uret:(define (aralik p q) (if (> p q) '() (cons p (aralik (+ p 1) q))))
; n1xn2 boyutlarinda bos bir tahta yarat:(define (bos-tahta n1 n2) (carp (aralik 1 n1) (aralik 1 n2)))
(./ gUQHN ELU 6FKHPH SURJUDP
-
EEBM7UK, Ankara, 1998
%LU SURJUDPODPD GLOLQL HLWLP DPDoO NXOODQUNHQ
\HQL EDOD\DQ |UHQFL\H ED] VW G]H\ YHUL WLSOHUL
|UQHLQ GRDO GLOOHUOH LOJLOL RODUDN NHOLPH FPOH JLEL
YHUL WLSOHUL VXQXOPDV |UHQFLQLQ GLOLQ DQODOPDV
QLVSHWHQ ]RU D\UQWODUQD ERXOPDGDQ LOJLQo
SUREOHPOHUOH XUDPDVQ VDODPDNWDGU 'HUVLQ LOHUL
DDPDODUQGD EX YHUL WLSOHULQLQ \LQH GLOLQ NHQGL
RODQDNODU\OD QDVO JHUoHNOHWLULOGLLQL J|VWHUPHN KHP
|UHQFLQLQ WHNQLN ELOJLVLQL SHNLWLUPHNWH KHP GH
|UHQFL\H X\JXODPD DODQQD X\JXQ |]HO QRWDV\RQ
\DUDWPD NDYUDPQ KLVVHWWLUPHNWHGLU 6WDQGDUG GLOL
ELOHQ RNX\XFXODUQ LQFHOHPHVLQL NROD\ODWUPDN
DPDF\OD HNLO GHNL SURJUDPGD |UHQFLOHUH
VDODQDQ NXOODQP GDKD NROD\ IRQNVL\RQODU \HULQH
EXQODUQ VWDQGDUG NDUONODUQD \HU YHULOPLWLU
5. ODT Deneyimi2UWD 'RX 7HNQLN hQLYHUVLWHVL %LOJLVD\DU 0KHQGLVOLL
%|OP |UHWLP \OQQ ELULQFL G|QHPLQGHQ
EDOD\DUDN &(1* NRGOX %LOJLVD\DU 0KHQGLVOLL
.DYUDPODUQD *LUL GHUVLQLQ \HQL \DNODP YH LoHULNOH
YHULOPHVLQL EHQLPVHGL %X ELOGLULQLQ \D]DUODU o
DUDWUPD J|UHYOLVLQLQ \DUGP\OD GHUVL \UWWOHU
ELULQFL VQI |UHQFLVL LNL JUXS KDOLQGH KDIWDGD o VDDW
GHUVH JLUGLOHU EH JUXS KDOLQGH KDIWDGD LNL VDDW L
LVWDV\RQX ODERUDWXYDUQGD oDOWODU %X ODERUDWXYDUQ
LPNDQODU 6XQ L LVWDV\RQX YH ELU GRV\D
VXQXPFXVXQGDQ ROXPDNWDGU /DERUDWXYDU VDDWOHUL
GQGD |UHQFLOHU E|OPQ YH QLYHUVLWHQLQ GLHU
RODQDNODUQGDQ |]HOOLNOH 3& ODERUDWXYDUODUQGDQ
\DUDUODQGODU
'|QHPLQ LON G|UW KDIWDVQGD ELOJLVD\DU PLPDULVL
LOHWLP VLVWHPL YH GLHU VLVWHP \D]OPODU DQD
KDWODU\OD GHUVOHUGH DQODWOG /DERUDWXYDU VDDWOHULQGH
|UHQFLOHUH ELOJLVD\DUQ WHPHO SDUoDODU WDQWOG 8QL[
LOHWLP VLVWHPL ; SHQFHUHOHPH RUWDP YH EXQGDQ
VRQUD VNoD NXOODQDFDNODU SURJUDPODU
vi editr, tin,elm YE KDEHUOHPH \D]OPODU JLEL WHPHO NXOODQPG]H\LQGH |UHWLOGL
'|QHPLQ NDODQ RQ KDIWDV ER\XQFD IRQNVL\RQHO
SDUDGLJPD\D GD\DO RODUDN WHPHO SURJUDPODPD HLWLPL
\DSOG %X DDPDGD GHUV NLWDE RODUDN >@ \DUGPF
ND\QDN RODUDN >@ NXOODQOG gUHQFLOHU GHUVOHUGH
NDYUDPODUOD WDQWODU ODERUDWXYDUGD EX NDYUDPODU
JHUHNWLUHQ SUREOHPOHUL ELOJLVD\DU EDQGD ELUH\VHO
oDODUDN DVLVWDQODUQ J|]HWLPL DOWQGD o|]GOHU
3UREOHPOHUGH VD\VDO YH VHPEROLN KHVDSODPD\D HLW
DUON YHULOGL
gUHQFLOHULQ NDUQH QRWODU o HY |GHYL ODERUDWXYDU
|GHYOHUL LNL DUD VQDY YH ELU ILQDO VQDYQQ ELOHNHVL
RODUDN RUWD\D oNW 2UWDJHoHU DQODPQD JHOHQ && YH
]HULQGH QRW DODQODU RUDQQGD\NHQ GHUVL
WHNUDUODPDN ]RUXQGD NDODQODUQ RUDQ GD NDOG
gUHWLP HOHPDQODU YH |UHQFLOHU DUDODUQGD
NHVLQWLVL] LOHWLLP LoLQ E|OPQ RUWDN GRV\D VLVWHPLQGH
NXUXOX ELU KDEHUOHPH JUXEXQGDQ HOHNWURQLN SRVWD
RODQDQGDQ YH world wide webGHQ \DUDUODQGODU
(Ders ile ilgili www VD\IDVQDhttp://www.ceng.metu.edu.tr 85/LQGHQ XODODELOLU
%|OPGH D\Q G|QHP YHULOHQ &(1* NRGOX
\|QOHQGLUPH GHUVL D\Q |UHQFL JUXEXQD ELOJL
WHNQRORMLOHUL ELOJLVD\DU PKHQGLVOLL GLVLSOLQL YH
PHVOHL QLYHUVLWH YH E|OP KDNNQGD WDQWF ELOJLOHU
YHUPHVLQLQ \DQVUD ELOJLVD\DU RNXU\D]DUO ,QWHUQHW
NXOODQP JLEL EHFHULOHU GH ND]DQGUDUDN &(1*
dersini btnledi.
Bir dnemlik deneyim kesin sonulardan sz etmekLoLQ HOEHWWH NL NVDGU OHUL VQIODUGDNL |UHQFLOHULQ
|]POHPHNWH ]RUODQG NDYUDPODU \HQL EDOD\DQ
|UHQFLOHULQ E\N ELU GRDOONOD EHQLPVH\LS
NXOODQGNODUQ J|UGN $NDGHPLN EDDUODUQQ
|WHVLQGH |UHQFLOHULPL]GH G|QHP ER\XQFD
J|UGP] HYN YH KH\HFDQ GRUX \ROGD
ROGXXPX]D GDLU EL]GH ELU NXNX EUDNPDPWU
7((..h5
'HUVLQ LOHQLLQGH |QHPOL NDWNODU RODQ DUDWUPD
J|UHYOLOHUL ONHU $OWQWD 6HOoXN HQNXO YH +DVDQ
8OXVR\D WHHNNU HGHUL]
REFERANSLAR
1. Hartmanis, J. (editor) Computing the future.Summary report of the Committee to Assess theScope and Direction of Computer Science andTechnology of the National Research Council,Communications of the ACM 35, 11 (November1992), 30-40.
2. Walker, H.M. and Schneider, G.M. A revisedcurriculum for a liberal arts degree in computerscience, Communications of the ACM 39, 12(December 1996), 85-95.
3. Clinger, W. and Rees, J. (editors) Revised4 Reporton the Algorithmic Language Scheme. November1991. Available from URL: http://www-swiss.ai.mit.edu/scheme-home.html.
4. Harvey, B. and Wright, M. Simply Scheme:Introducing Computer Science. MIT Press,Cambridge, Massachusetts, 1994. ISBN 0-262-08226-8.
5. Friedman, D.P. and Felleisen, M. The LittleSchemer. MIT Press, Cambridge, Massachusets,1996 (4th edition). ISBN 0-262-56099-2.