Title: FOLDOC TheFreeDictionary:
1????? ?????? ???????? ?????? ?????
2?? ?? ????? ???????
?????????? ?????? ????? ???????
3????? ?????? - ???????
????? FOLDOC ? ????? TheFreeDictionary
stepwise refinement is top down design top
down design The software design technique
which aims to describe functionality at a very
high level, then partition it repeatedly into
more detailed levels one level at a time until
the detail is sufficient to allow coding
Web definition The process of repeatedly
subdividing a problem into smaller subproblems
until a detailed algorithm for solving the
problem emerges.
4????? ?????? ????? ?????
- Polya, G (1957)
- ???? 4 ????? ?????? ?????
- ???? ?????
- ????? ????? (???? ?????)
- ????? ????? ?? ????? ??????
- ??????? ?????
5????? ?????? ????? ?????(...)
- ??????? ????? ?"? (1971) Niklaus Wirth, ???????
????? ?? ???? ???-????? (????? ??? ????? ????
?????). - ???? ??? ??? ?? ????? ??????
- ?????? ?????-????? (interdependence) ???
??-????? - ????? ???? ?? ??????? ?? ????? ??-?????
- ????? ?? ??? ????? ????? ????? (??????) ?????
??? ?????
6????? ?????? ????? ?????(...)
???? ???? Edsger Dijkstra(1972) , ????? ?????
????? ?? ????? ?????? ???? ?????? ????? ???????
(?????? ????? ???? ????? ?? ????? ????? ???????
???????). ????? ?????? ??? ??? ??????????? ?????
??????, ??????? ?? ?????? ???? ???-????? ?????
????, ????? ??? ?????? ?? ??-????. ????? ??? ????
?? ??? ????? ???? ?????? ??????
7????? ?????? ????? ?????(...)
Harlan Mills (1978) ????? ????? ?????? ??????
?????? divide, connect, and check an intended
function by reexpressing it as an equivalent
structure of properly connected subfunctions,
each solving part of the problem , and each
simpler than the original to future divide,
connect and check
8????? ?????? ????? ?????(...)
??? Eisenberg,Abelson 1998)) ????? ??????
?????????? ????? ?????? ???? (top down design)
???? ??????? ?????? ?? ???????? ????? ?????
????? ??????? ?????? ???????? ?????? ??????
?????, ???? ????? ??????? ?? ??????? ?? ?????????
??? ??????? ????. ???? ??? ??????? ?? ??????
??????? ?????? ????????? ???????? ??? ???????
????. ?? ???? ??, ???? ?????? ????????? ??????
????? ???????? ???? ????. ?????? ???? ?? ???? ??
?????? ?? ????? ????? ????? ?????, ??????
????????? ??????? ????. ????? ?? ???? ????
??????? ????????? ??????? ????. ???? ????
??????? ???????
9????? ?????? ????? ????? (...)
- ??? ( Hazan 2003) ????? ?????? ???? ?????? ????
??????? - ?????? ??????, ????? ??????? ???? ??????
??????? ???? - ????? top down design , ???? ?????? ????
?? ?????? ??? - ???-????? ????? ???? ??????? ????...
- ?????? ????, ????? ????? ??? ????? ?????
??????? ???? - ????? ??????? ????? ???? ?????. ????? ???
???? ???? - ?????? ?? ????? ??????, ?????? ???????
???????? ???? - ?????, ?????? ????. ???? ???????? ?????
???????? ?? ?????? - ???, ?????? ????? ?????? ???? ??? ??????
????? ???? - ????? (????? ???? ????? ????? ?????), ????
????? ?? ???? - ????? ?? ????? ?????? ??????? ( bottom-up
design ).
10????? ?????? ????? ??? ?????
11????? ?????? ???????? - ????1
????? ???? ??????? f (x)
12???? ?????
- ?? 2
- ????? ???? ?????
- 1.1 ???? ???? ?????.
- 1.2 ????? ???????? ?????.
- 2. ???? ?????? ????? ?? ??????.
- 3. ????? ????? ?????????
- 3.1 ????? ?????? ??????? ????????
- 3.2 ????? ????? ???? ??????
- 3.3 ????? ????? ???? ?????????
- 4. ????? ??????? ?????????? ???????
- ?? 1
- ??? ???? ?????.
- 2. ??? ?????? ????? ?? ??????
- ??? ????? ?????????
- 4. ??? ????????? ???????
?? 3 1. ????? ????? ???? ????????? 1.1
????? ?????? ????? 1.2 ????? ????? ??????
???????
13????? ?????? ????? ????? ????1
???? ???? ?????? ??? ????? ?????? ???????
nxn?????? ??? ?????? ???? ????? ????.
?????? ????? ???? ???? ????? ??? ???? ?????? ???
???? ???? ????? ?????? ???
????? ????? ????? ?????? ???
??? ??????????.
14 ???? ?????
?? 3 1. ????? ??????? ????-??????-???? 2.
????? ??????? ????-??????-???? 3. ???????
????-???-????? 3.1 ??? ????? ? 1 ?? N
3.1.1 ?? (????-????? ! X)
???? ??? 3.2 ???? ??? 4. ???????
????-???-???? 4.1 ??? ???? ? 1 ?? N
4.1.1 ?? (????-???? ! X)
???? ??? 4.2 ???? ???.
?? 1 1. ???? ?????? ??????. 2. ???? ??? ???
?????-???.
?? 2 1. ????? ??????? ?????? ?????? ?????? 2.
????? ??????? ?????? ????? ??? 2.1 ???
????-??????-???? ????? ???? ?- X 2.2 ??
(????-??????-???? ???? ? X) ???
(????-???-????? ???? ? X) ???
(????-???-???? ???? ? X) ?? ????
??? ???? ???.
?? 4 1. ????? ??????? ????-????? 2. ?????
??????? ????-????
15????? ?????? ???????? ???? 2
???? ?????? ???? ????? ???, r, ?????? ??????
?????? ??? S
????? ????? ?????? M,N,P.
?????? ?? ?????? M,N,P ?????? ?? ???? ??? ????? r.
P
S
M
N
16 ???? ????? ?? 1
- ???? ????? ABC, ????? ????? H.
- ???? ?? ??????
- ???? ?? ????? H ???? ????? ???? ??????
- ?????? ABC
A
H
B
C
17 ???? ????? ?? 2
- ???? ?? ????? ???????? ?????? ???? ?????? ??
????? ?? ?????, ???? ????? ?? ?????, ????? ??
???? ????? ?? ?????? ??"?.
A
H
B
C
D
18 ???? ????? ?? 3
???? ?? ????? ?? ???? ????? ????? ???? ?????? ??
???? ????? ??? ??? ???????? ?? ?????? ??"? ??????
???? ??????? ?????? .
A
H
B
C
D
19 ???? ????? ?? 4
????? ?? ?????? ???? ????? ????, ??????? ???
?????? ????? ?? ?????? ???? , ????? ?? ???
20??? ?? ????? ?????? ????? ?????
??? S ???? ????? ???? ?????? ?? ????? PMN
??? ???? ????? ??????
?? ??? ???? ???? ????? ???? ??? ???? ??????
?????? ??????
?????? ????? ???? ?????? ???? ??
???? ?????? M,N,P,S
P
S
M
N
??? ????? ??????? ?????? ?????? ??? ??????? ?? ??
???????. ??"? ?
21????? ?????? ????? ????? ???? 2
???? ???? ???????? without ??????? ????
????? (????? n) ??????? L.
22 ???? ?????
?? 1 ???? ??????? without-1 ?????? ?????
??????? ???? ??? ????? ??????. ????, ??????
?????? ( without-1 ( 10 20 30 40 ) )
???? ?? ?????? ( 20 30 40 )
?? 2 ???? ??????? without-2 ?????? ?????
??????? ???? ??? ????? ????. ????, ?????? ??????
( without-2 ( 10 20 30 40 ) )
???? ?? ?????? ( 10 30 40 )
?? 3 ???? ?????? ?? ???????? without-3 ?????
??? ???? ?????? ????????? ???????. (define
(without-3 L) (cons ( first L ) without-2
( rest L ) ) )
23?? 4 ?????? ?? ???????? ??????? ??????? ??
????? ?????? ???. (define (without-4 L) (cons
( first L )
) ) ?????? ?? ???????? ?? ?????
????? ????.
?? 5 ????? ?? ???????? ?????? without ???????
???? ????? (????? n) ??????? L. ????? (define
(without n L) (cond ( n 1 ) (
rest L ) else ( cons ( first L )
without ( sub1 n ) ( rest L ) ) ) )
24??? ?????
Polya, G (1957). How to Solve It, 2nd ed.,
Princeton University Press N. Wirth (1971),
Program Development By Stepwise Refinement.
Comm. ACM, pp. 221-227. available online
http//www.acm.org/classics/dec95/ Dijkstra, E.
W. (1972). Notes on structured programming. In
Dahl, O. J., Hoare, C. A. R. and Dijkstra, E. W.
(eds.). Structured Programming, Academic Press,
New-York. R. Linger, H. Mills, and B. Witt
(1979), Structured Programming theory and
Practice, Addition-Wesley, Reading, Mass
25??? ????? (...)
Carrasquel, J. Roberts, J. Pane, J. (1989).
The design tree a visual approach to top-down
design and data flow. ACM Press New York, NY,
USA , pp. 17 - 21 Reynolds, R.G., Maletic,
J.I., Porvin, S. (1992), "Stepwise Refinement and
Problem Solving ", IEEE Software , vol. 9, no.
5, pp. 79-88. ???, ?. (2003 ) . ????? ???????
????? ????? ????? ?????? ??????? ????? ??????.
????? ?????? ???? ?????, ????? ????? 2003, ??????
43-50