home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS 1
/
BBS#1.iso
/
document
/
pas60pg.lzh
/
PG04.MY
< prev
next >
Wrap
Text File
|
1991-01-26
|
16KB
|
402 lines
âïÇéÇ 4.
ÅàÉàîàìì¢à.
ÄíΩ∩ó½Ñ¡¿∩ »ÑαѼѡ¡δσ.
ÄíΩ∩ó½Ñ¡¿Ñ »ÑαѼѡ¡δσ »αÑñßΓáó½∩ÑΓ ß«í«⌐ ß»¿ß«¬ ¿ñÑ¡Γ¿Σ¿¬áΓ«α«ó,
¬«Γ«αδÑ «í«º¡áτáεΓ ¡«óδÑ »ÑαѼѡ¡δÑ ¿ ¿σ Γ¿»δ.
«íΩ∩ó½Ñ¡¿Ñ ┌────────────┐ ┌─┐ ┌───┐ ┌─┐
»ÑαѼѡ¡«⌐ ───÷│ß»¿ß«¬ ¿ñÑ¡-├──÷│:├──÷│Γ¿»├─┬────────────┬─÷│;├──÷
│Γ¿Σ¿¬áΓ«α«ó │ └─┘ └───┘ │ │ └─┘
└────────────┘ │ ┌───────┐ │
└─÷│ñ¿αѬ- ├─┘
│Γ¿óá │
│absolu-│
│te │
└───────┘
Æ¿», ºáñáóáѼδ⌐ ñ½∩ »ÑαѼѡ¡δσ, ¼«ªÑΓ íδΓ∞ ¿ñÑ¡Γ¿Σ¿¬áΓ«α«¼
Γ¿»á, ¬«Γ«αδ⌐ íδ½ αá¡ÑÑ «íΩ∩ó½Ñ¡ ó αáºñÑ½Ñ «íΩ∩ó½Ñ¡¿∩ Γ¿»«ó Γ«ú« ªÑ
ßἫú« í½«¬á, ¿½¿ í½«¬á, ó ¬«Γ«αδ⌐ óσ«ñ¿Γ »Ñαóδ⌐, ¿½¿ ¼«ñπ½∩; φΓ«Γ
Γ¿» ΓᬠªÑ ¼«ªÑΓ íδΓ∞ ¡«óδ¼ «»αÑñѽѡ¿Ñ¼ Γ¿»á.
Åα¿ π¬áºá¡¿¿ ¿ñÑ¡Γ¿Σ¿¬áΓ«αá ó ß»¿ß¬Ñ ¿ñÑ¡Γ¿Σ¿¬áΓ«α«ó
«íΩ∩ó½Ñ¡¿∩ »ÑαѼѡ¡«⌐ φëà ¿ñÑ¡Γ¿Σ¿¬áΓ«α - φΓ« ¿ñÑ¡Γ¿Σ¿¬áΓ«α
»ÑαѼѡ¡«⌐ ó í½«¬Ñ, úñÑ óßΓαÑΓ¿½«ß∞ φΓ« «íΩ∩ó½Ñ¡¿Ñ. è φΓ«⌐
»ÑαѼѡ¡«⌐ ¼«ª¡« «íαáΘáΓ∞ß∩ ¿º ½εí«ú« ¼ÑßΓá φΓ«ú« í½«¬á, Ñß½¿ ÑÑ
¿ñÑ¡Γ¿Σ¿¬áΓ«α ¡Ñ »ÑαÑ«»αÑñѽѡ ó í½«¬Ñ, óσ«ñ∩ΘѼ ó »Ñαóδ⌐.
ÅÑαÑ«»αÑñѽѡ¿Ñ «º¡áτáÑΓ, τΓ« ñ½∩ ¡«ó«⌐ »ÑαѼѡ¡«⌐ ¿ß»«½∞ºπÑΓß∩ Γ«Γ
ªÑ ßá¼δ⌐ ¿ñÑ¡Γ¿Σ¿¬áΓ«α, ¡« φΓ« ¿ß»«½∞º«óá¡¿Ñ ¡Ñ «¬áºδóáÑΓ ó½¿∩¡¿∩
¡á º¡áτÑ¡¿Ñ »Ñαó«¡áτá½∞¡«⌐ »ÑαѼѡ¡«⌐.
Åα¿óÑñѼ »α¿¼Ñα αáºñÑ½á «íΩ∩ó½Ñ¡¿∩ »ÑαѼѡ¡δσ:
var
X, Y, Z : Real;
I, J, K : Integer;
Digit : 0 .. 9;
C : Color;
Done, Error: Boolean;
Operator : (Plus, Minus, Times);
Hue1, Hue2 : set of Color;
Today : Date;
Results : MesureList;
P1, P2 : Person;
Matrix : array[1 .. 10, 1 .. 10] of Real;
ÅÑαѼѡ¡δÑ, «íΩ∩ó½Ñ¡¡δÑ ó¡Ñ »α«µÑñπαδ ¿ Σπ¡¬µ¿¿, ¡áºδóáεΓß∩
ú½«íá½∞¡δ¼¿ »ÑαѼѡ¡δ¼¿ ¿ αáß»«½áúáεΓß∩ ó ßÑú¼Ñ¡ΓÑ ñá¡¡δσ.
ÅÑαѼѡ¡δÑ, «íΩ∩ó½Ñ¡¡δÑ ó ßἫ⌐ »α«µÑñπαÑ ¿½¿ Σπ¡¬µ¿¿, ¡áºδóáεΓß∩
½«¬á½∞¡δ¼¿ »ÑαѼѡ¡δ¼¿ ¿ αáß»«½áúáεΓß∩ ó ßÑú¼Ñ¡ΓÑ ßΓѬá.
æÑú¼Ñ¡Γ ñá¡¡δσ.
îá¬ß¿¼á½∞¡δ⌐ αẼÑα ßÑú¼Ñ¡Γá ñá¡¡δσ αáóÑ¡ 65520 íá⌐Γ. Åα¿
¬«¼»á¡«ó¬Ñ »α«úαá¼¼δ (τΓ« áóΓ«¼áΓ¿τÑ߬¿ «ßπΘÑßΓó½∩ÑΓß∩ ó ¬«¡µÑ
¬«¼»¿½∩µ¿¿ »α«úαá¼¼δ) ú½«íá½∞¡δÑ »ÑαѼѡ¡δÑ óßÑσ ¼«ñπ½Ñ⌐,
¿ß»«½∞ºπѼδσ »α«úαá¼¼«⌐, á Γá¬ªÑ ß«íßΓóÑ¡¡δÑ ú½«íá½∞¡δÑ »ÑαѼѡ¡δÑ
»α«úαá¼¼δ αẼÑΘáεΓß∩ ó ßÑú¼Ñ¡ΓÑ ñá¡¡δσ.
àß½¿ ñ½∩ ú½«íá½∞¡δσ »ÑαѼѡ¡δσ ΓαÑíπÑΓß∩ í«½ÑÑ 65520 íá⌐Γ, Γ«
ß½ÑñπÑΓ αáß»αÑñѽ¿Γ∞ í«½∞Φ¿Ñ ßΓαπ¬Γπαδ ó ó¿ñÑ ñ¿¡á¼¿τÑ߬¿σ
»ÑαѼѡ¡δσ. äá½∞¡Ñ⌐ΦÑÑ «»¿ßá¡¿Ñ φΓ«⌐ ΓÑ¼δ ¼«ª¡« ¡á⌐Γ¿ ó αáºñѽÑ
"ô¬áºáΓѽ¿ ¿ ñ¿¡á¼¿τÑ߬¿Ñ »ÑαѼѡ¡δÑ" ¡áßΓ«∩ΘÑ⌐ ú½áóδ.
æÑú¼Ñ¡Γ ßΓѬá
ÉẼÑα ßÑú¼Ñ¡Γá ßΓѬá πßΓá¡áó½¿óáÑΓß∩ ß »«¼«Θ∞ε ñ¿αÑ¬Γ¿óδ
¬«¼»¿½∩Γ«αá $M ¿ ½Ñª¿Γ ó »αÑñѽáσ «Γ 1024 ñ« 65520 íá⌐Γ. Å«
π¼«½τá¡¿ε αẼÑα ßΓѬá αáóÑ¡ 16384 íá⌐Γ.
Åα¿ ¬áªñ«⌐ á¬Γ¿ó¿ºáµ¿¿ (ó맮óÑ) »α«µÑñπαδ ¿½¿ Σπ¡¬µ¿¿ ó ßΓѬ
»«¼ÑΘáÑΓß∩ ¡áí«α ½«¬á½∞¡δσ »ÑαѼѡ¡δσ. Åα¿ ºáóÑαΦÑ¡¿¿ αáí«Γδ
»á¼∩Γ∞, ºá¡¿¼áѼá∩ ½«¬á½∞¡δ¼¿ »ÑαѼѡ¡δ¼¿, «ßó«í«ªñáÑΓß∩. é ½εí«⌐
¼«¼Ñ¡Γ óδ»«½¡Ñ¡¿∩ »α«úαá¼¼δ «íΘ¿⌐ αẼÑα ½«¬á½∞¡δσ »ÑαѼѡ¡δσ ó
á¬Γ¿ó¡δσ »α«µÑñπαáσ ¿ Σπ¡¬µ¿∩σ ¡Ñ ñ«½ªÑ¡ »αÑóδΦáΓ∞ αẼÑαá ßÑú¼Ñ¡Γá
ßΓѬá.
ä¿αÑ¬Γ¿óá ¬«¼»¿½∩Γ«αá $S ¿ß»«½∞ºπÑΓß∩ ñ½∩ »α«óÑñÑ¡¿∩ »α«óÑ᫬
»ÑαÑ»«½¡Ñ¡¿∩ ßΓѬá ó »α«úαá¼¼Ñ. é ß«ßΓ«∩¡¿¿ {$S+}, »α¿¡∩Γ«¼ »«
π¼«½τá¡¿ε, úÑ¡Ñα¿απÑΓß∩ ¬«ñ, «ßπΘÑßΓó½∩εΘ¿⌐ »α«óÑα¬π »ÑαÑ»«½¡Ñ¡¿∩
ßΓѬá ó ¡áτá½Ñ ¬áªñ«⌐ »α«µÑñπαδ ¿½¿ Σπ¡¬µ¿¿. é ß«ßΓ«∩¡¿¿ {$S-}
Γá¬¿Ñ »α«óÑન ¡Ñ »α«ó«ñ∩Γß∩. ÅÑαÑ»«½¡Ñ¡¿Ñ ßΓÑ¬á ¼«ªÑΓ óδºóáΓ∞
áóáα¿⌐¡«Ñ ºáóÑαΦÑ¡¿Ñ αáí«Γδ ß¿ßΓѼδ, »«φΓ«¼π ¡Ñ ß½ÑñπÑΓ «Γ¼Ñ¡∩Γ∞
»α«óÑન ßΓѬá, Ñß½¿ ¡ÑΓ áíß«½εΓ¡«⌐ πóÑαÑ¡¡«ßΓ¿ ó Γ«¼, τΓ«
»ÑαÑ»«½¡Ñ¡¿∩ ¡Ñ »α«¿º«⌐ñÑΓ.
Çíß«½εΓ¡δÑ »ÑαѼѡ¡δÑ.
ÅÑαѼѡ¡δÑ ¼«ª¡« «»¿ßáΓ∞ Γá¬, τΓ« «¡¿ íπñπΓ αáß»«½áúáΓ∞ß∩ »«
«»αÑñѽѡ¡«¼π áñαÑßπ ó »á¼∩Γ¿, ¿ ó φΓ«¼ ß½πτáÑ «¡¿ ¡áºδóáεΓß∩
áíß«½εΓ¡δ¼¿ »ÑαѼѡ¡δ¼¿. ÄíΩ∩ó½Ñ¡¿Ñ Γᬿσ »ÑαѼѡ¡δσ ñ«½ª¡«
ß«ñÑαªáΓ∞ ñ¿αÑ¬Γ¿óπ absolute:
«íΩ∩ó½Ñ¡¿Ñ ┌────────┐ ┌─────────┐ ┌─┐ ┌─────────┐
áíß«½εΓ¡«⌐ ───÷│absolute├─┬─÷│µÑ½«Ñ íѺ├──÷│:├──÷│µÑ½«Ñ íѺ├─┬─÷
»ÑαѼѡ¡«⌐ └────────┘ │ │ º¡á¬á │ └─┘ │ º¡á¬á │ │
│ └─────────┘ └─────────┘ │
│ ┌─────────────┐ │
└──────÷│¿ñÑ¡Γ¿Σ¿¬áΓ«α├────────────┘
│ »ÑαѼѡ¡«⌐ │
└─────────────┘
ÄΓ¼ÑΓ¿¼ τΓ« ß»¿ß«¬ ¿ñÑ¡Γ¿Σ¿¬áΓ«α«ó ó «íΩ∩ó½Ñ¡¿¿ »ÑαѼѡ¡«⌐ »α¿
π¬áºá¡¿¿ ñ¿αÑ¬Γ¿óδ absolute ¼«ªÑΓ ß«ñÑαªáΓ∞ Γ«½∞¬« «ñ¿¡
¿ñÑ¡Γ¿Σ¿¬áΓ«α.
ÅÑαóá∩ Σ«α¼á ß ñ¿αÑ¬Γ¿ó«⌐ absolute ß«ñÑαª¿Γ ßÑú¼Ñ¡Γ ¿
ß¼ÑΘÑ¡¿Ñ, Γ« ÑßΓ∞ áñαÑß, úñÑ ñ«½ª¡á íδΓ∞ αẼÑΘÑ¡á »ÑαѼѡ¡á∩.
CrtMode : Byte absolute $0040 : $0049;
ÅÑαóá∩ ¬«¡ßΓá¡Γá «í«º¡áτáÑΓ íẫóδ⌐ ßÑú¼Ñ¡Γ, á óΓ«αá∩
«»αÑñѽ∩ÑΓ ß¼ÑΘÑ¡¿Ñ ó¡πΓα¿ φΓ«ú« ßÑú¼Ñ¡Γá. ÄíÑ ¬«¡ßΓá¡Γδ ¡Ñ ñ«½ª¡δ
óδσ«ñ¿Γ∞ ºá »αÑñѽδ ñ¿á»áº«¡á «Γ $0000 ñ« $FFFF («Γ 0 ñ« 65535).
éΓ«αá∩ Σ«α¼á ß ñ¿αÑ¬Γ¿ó«⌐ absolute ¿ß»«½∞ºπÑΓß∩ ñ½∩ «íΩ∩ó½Ñ¡¿∩
»ÑαѼѡ¡«⌐, ¬«Γ«αá∩ »«¼ÑΘáÑΓß∩ "»«óÑασ" ñαπú«⌐ »ÑαѼѡ¡«⌐, Γ« ÑßΓ∞
»« Γ«¼π ªÑ ßἫ¼π áñαÑßπ, τΓ« ¿ ñαπúá∩ »ÑαѼѡ¡á∩.
var
Str : String[32];
StrLen : Byte absolute Str;
¥Γ« «íΩ∩ó½Ñ¡¿Ñ π¬áºδóáÑΓ, τΓ« »ÑαѼѡ¡á∩ StrLen ñ«½ª¡á
αẼÑΘáΓ∞ß∩ ß Γ«ú« ªÑ áñαÑßá, τΓ« ¿ »ÑαѼѡ¡á∩ Str, á »«ß¬«½∞¬π
»Ñαóδ⌐ íá⌐Γ ßΓ᫬«ó«⌐ »ÑαѼѡ¡«⌐ ß«ñÑαª¿Γ ñ¿¡á¼¿τÑ߬πε ñ½¿¡π
ßΓ᫬¿, Γ« StrLen íπñÑΓ ß«ñÑαªáΓ∞ ñ½¿¡π Str.
æß佬¿ ¡á »ÑαѼѡ¡δÑ.
æßδ½¬á ¡á »ÑαѼѡ¡πε ¼«ªÑΓ «í«º¡áτáΓ∞ ß½ÑñπεΘÑÑ:
- »ÑαѼѡ¡πε;
- φ½Ñ¼Ñ¡Γ »ÑαѼѡ¡«⌐ ßΓαπ¬Γπα¡«ú« ¿½¿ ßΓ᫬«ó«ú« Γ¿»á;
- ñ¿¡á¼¿τÑ߬πε »ÑαѼѡ¡πε, ¡á ¬«Γ«απε π¬áºδóáÑΓ »ÑαѼѡ¡á∩
Γ¿»á π¬áºáΓѽ∞.
æ¿¡Γá¬ß¿ß ßß佬¿ ¡á »ÑαѼѡ¡πε ¿¼ÑÑΓ ó¿ñ:
┌─────────────┐
ßßδ½¬á ¡á ─┬──÷│¿ñÑ¡Γ¿Σ¿¬áΓ«α├────────────────────────────┬──÷
»ÑαѼѡ¡πε │ │ »ÑαѼѡ¡«⌐ │ ° ° ┌────────────┐ │
│ └─────────────┘ │ └──┤¬óá½¿Σ¿¬áΓ«α│≈─┘
│ ┌───────────────┐ │ └────────────┘
├──÷│»α¿óÑñÑ¡¿Ñ Γ¿»á├────┤
│ │ »ÑαѼѡ¡«⌐ │ │
│ └───────────────┘ │
│ ┌─────────────┐ ┌─┐ │
└──÷│ó맮ó Σπ¡¬µ¿¿├─÷│^├─┘
└─────────────┘ └─┘
çá¼ÑΓ¿¼, τΓ« ß¿¡Γá¬ß¿ß ßß佬¿ ¡á »ÑαѼѡ¡πε ñ«»π߬áÑΓ
¿ß»«½∞º«óáΓ∞ ó맮ó Σπ¡¬µ¿¿ τÑαѺ π¬áºáΓѽ∞ ¡á Σπ¡¬µ¿ε. Å«½πτÑ¡¡δ⌐ ó
αѺπ½∞ΓáΓÑ π¬áºáΓѽ∞ ºáΓѼ αế¼Ñ¡«óδóáÑΓß∩ ß ΓѼ, τΓ«íδ «í«º¡áτáΓ∞
ñ¿¡á¼¿τÑ߬πε »ÑαѼѡ¡πε.
èóá½¿Σ¿¬áΓ«αδ.
æßδ½¬á ¡á »ÑαѼѡ¡πε »αÑñßΓáó½∩ÑΓ ß«í«⌐ ¿ñÑ¡Γ¿Σ¿¬áΓ«α
»ÑαѼѡ¡«⌐ ß ¡Ñ߬«½∞¬¿¼¿ ¬óá½¿Σ¿¬áΓ«αἿ ¿½¿ íѺ ¡¿σ, ¬«Γ«αδÑ
¿º¼Ñ¡∩εΓ º¡áτÑ¡¿Ñ ßß佬¿ ¡á »ÑαѼѡ¡πε.
┌──────┐
¬óá½¿Σ¿¬áΓ«α ──┬──÷│¿¡ñѬß├──────────÷
│ └──────┘ °
│ ┌───────────┐ │
├──÷│«í«º¡áτÑ¡¿Ñ├──┤
│ │ »«½∩ │ │
│ └───────────┘ │
│ ┌ ─┐ │
└──÷│ ^ ├──────────┘
└─ ┘
êñÑ¡Γ¿Σ¿¬áΓ«α ¼áßß¿óá íѺ ¬óá½¿Σ¿¬áΓ«αá ∩ó½∩ÑΓß∩ ßß佬«⌐ ¡á
óÑß∞ ¼áßß¿ó, ¡á»α¿¼Ñα:
Results
êñÑ¡Γ¿Σ¿¬áΓ«α ¼áßß¿óá ß π¬áºá¡¡δ¼ ¿¡ñѬ߫¼ «í«º¡áτáÑΓ
¬«¡¬αÑΓ¡δ⌐ φ½Ñ¼Ñ¡Γ ¼áßß¿óá, ó ñá¡¡«¼ ß½πτáÑ ßΓαπ¬Γπα¡πε »ÑαѼѡ¡πε:
Results[Current + 1]
é ß½πτáÑ, Ñß½¿ ¬«¼»«¡Ñ¡Γ«⌐ ∩ó½∩ÑΓß∩ ºá»¿ß∞ ¿½¿ «íΩѬΓ, ºá
¿¡ñѬ߫¼ ¼«ª¡« π¬áºáΓ∞ «í«º¡áτÑ¡¿Ñ »«½∩; ó φΓ«¼ ß½πτáÑ ßßδ½¬á ¡á
»ÑαѼѡ¡πε «º¡áτáÑΓ ¬«¡¬αÑΓ¡«Ñ »«½Ñ ó¡πΓα¿ ¬«¡¬αÑΓ¡«⌐ ¬«¼»«¡Ñ¡Γδ
¼áßß¿óá.
Results[Current + 1].Data
Å«½Ñ π¬áºáΓѽ∞ ¼«ªÑΓ ß«»α«ó«ªñáΓ∞ß∩ ß¿¼ó«½«¼ π¬áºáΓѽ∩ (^) ß
ΓѼ, τΓ«íδ »α«óÑßΓ¿ αẽ¿τ¿Ñ ¼Ñªñπ »«½Ñ¼ π¬áºáΓѽ∩ ¿ ñ¿¡á¼¿τÑ߬«⌐
»ÑαѼѡ¡«⌐, ¡á ¬«Γ«απε «¡ π¬áºδóáÑΓ.
Results[Current + 1].Data^
àß½¿ π¬áºδóáѼá∩ »ÑαѼѡ¡á∩ - ¼áßß¿ó, Γ« ¼«ª¡« ñ«íáó¿Γ∞ ¿¡ñѬßδ
ñ½∩ «í«º¡áτÑ¡¿∩ φ½Ñ¼Ñ¡Γ«ó φΓ«ú« ¼áßß¿óá.
Results[Current + 1].Data^[J]
îáßß¿óδ, ßΓ᫬¿ ¿ ¿¡ñѬßδ.
è«¡¬αÑΓ¡δ⌐ φ½Ñ¼Ñ¡Γ ¼áßß¿óá «í«º¡áτáÑΓß∩ ß »«¼«Θ∞ε ßß佬¿ ¡á
»ÑαѼѡ¡πε ¼áßß¿óá, ºá ¬«Γ«α«⌐ π¬áºδóáÑΓß∩ ¿¡ñѬß, ºáñáεΘ¿⌐
φ½Ñ¼Ñ¡Γ. è«¡¬αÑΓ¡δ⌐ ß¿¼ó«½ ó ßΓ᫬«ó«⌐ »ÑαѼѡ¡«⌐ «í«º¡áτáÑΓß∩ ß
»«¼«Θ∞ε ßß佬¿ ¡á ßΓ᫬«óπε »ÑαѼѡ¡πε, ºá ¬«Γ«α«⌐ π¬áºδóáÑΓß∩
¿¡ñѬß, ºáñáεΘ¿⌐ »«º¿µ¿ε ß¿¼ó«½á.
┌─┐ ┌─────────┐ ┌─┐
¿¡ñÑ¬ß ──÷│[├─────÷│óδαáªÑ¡¿Ñ├──┬──÷│]├──÷
└─┘ ° └─────────┘ │ └─┘
│ ┌─┐ │
└───────│,│≈─────┘
└─┘
ê¡ñѬߡδÑ óδαáªÑ¡¿∩ «í«º¡áτáεΓ φ½Ñ¼Ñ¡Γδ ó ß««ΓóÑΓßΓóπεΘÑ⌐
αẼÑα¡«ßΓ¿ ¼áßß¿óá. ù¿ß½« óδαáªÑ¡¿⌐ ¡Ñ ñ«½ª¡« »αÑóδΦáΓ∞ τ¿ß½á
¿¡ñѬߡδσ Γ¿»«ó ó «íΩ∩ó½Ñ¡¿¿ ¼áßß¿óá. ü«½ÑÑ Γ«ú«, Γ¿» ¬áªñ«ú«
óδαáªÑ¡¿∩ ñ«½ªÑ¡ íδΓ∞ ß«ó¼ÑßΓ¿¼ »« »α¿ßóá¿óá¡¿ε ß ß««ΓóÑΓßΓóπεΘ¿¼
¿¡ñÑ¬ß¡δ¼ Γ¿»«¼.
é ß½πτáÑ ¼¡«ú«¼Ñα¡«ú« ¼áßß¿óá «ñ¿¡á¬«ó« ¼«ª¡« ¿ß»«½∞º«óáΓ∞
¡Ñ߬«½∞¬« ¿¡ñÑ¬ß«ó ¿½¿ ¡Ñ߬«½∞¬« óδαáªÑ¡¿⌐ ó ¿¡ñѬßÑ; ¡á»α¿¼Ñα,
Matrix[I][J]
Γ«ªñÑßΓóÑ¡¡«
Matrix[I, J]
æΓ᫬«óπε »ÑαѼѡ¡πε ¼«ª¡« »α«¿¡ñѬ߿α«óáΓ∞ ß »«¼«Θ∞ε
«ñ¿¡«τ¡«ú« ¿¡ñѬߡ«ú« óδαáªÑ¡¿∩, º¡áτÑ¡¿Ñ ¬«Γ«α«ú« ñ«½ª¡« íδΓ∞ ó
ñ¿á»áº«¡Ñ 0 ..N, úñÑ N - π¬áºá¡¡δ⌐ ó «íΩ∩ó½Ñ¡¿¿ αẼÑα ßΓ᫬¿. ¥Γ«
ñáÑΓ ñ«ßΓπ» ¬ ¬áªñ«¼π ß¿¼ó«½π ó ßΓ᫬«ó«¼ º¡áτÑ¡¿¿, ß Γ¿»«¼ Char,
ñáóáѼ«¼π φΓ«¼π ß¿¼ó«½∞¡«¼π º¡áτÑ¡¿ε.
ÅÑαóδ⌐ ß¿¼ó«½ ßΓ᫬«ó«⌐ »ÑαѼѡ¡«⌐ (¿¡ñÑ¬ß 0) ß«ñÑনΓ
ñ¿¡á¼¿τÑ߬πε ñ½¿¡π ßΓ᫬¿; Γ« ÑßΓ∞ Length(S) Γ«ªñÑßΓóÑ¡¡«
Ord(S[0]). àß½¿ áΓα¿íπΓπ ñ½¿¡δ »α¿ßóáÑóáÑΓß∩ º¡áτÑ¡¿Ñ, Γ«
¬«¼»¿½∩Γ«α ¡Ñ »α«óÑα∩ÑΓ, ∩ó½∩ÑΓß∩ ½¿ φΓ« º¡áτÑ¡¿Ñ ¼Ñ¡∞ΦÑ
«íΩ∩ó½Ñ¡¡«ú« αẼÑαá ßΓ᫬¿. éδ ¼«ªÑΓÑ π¬áºáΓ∞ ¿¡ñÑ¬ß ßΓ᫬¿ ¿ ó¡Ñ
ÑÑ ΓѬπΘÑ⌐ ñ¿¡á¼¿τÑ߬«⌐ ñ½¿¡δ. é φΓ«¼ ß½πτáÑ ßτ¿ΓδóáѼδÑ ß¿¼ó«½δ
íπñπΓ ß½πτá⌐¡δ¼¿, á »α¿ßóá¿óá¡¿∩ ó¡Ñ ΓѬπΘÑ⌐ ñ½¿¡δ ¡Ñ »«ó½¿∩εΓ ¡á
ñÑ⌐ßΓó¿Γѽ∞¡«Ñ º¡áτÑ¡¿Ñ ßΓ᫬«ó«⌐ »ÑαѼѡ¡«⌐.
çỿ߿ ¿ «í«º¡áτÑ¡¿∩ »«½Ñ⌐.
è«¡¬αÑΓ¡«Ñ »«½Ñ »ÑαѼѡ¡«⌐ ºá»¿ß¿ «í«º¡áτáÑΓß∩ ß »«¼«Θ∞ε
ßß佬¿ ¡á »ÑαѼѡ¡πε ºá»¿ß¿, »«ß½Ñ ¬«Γ«α«⌐ π¬áºδóáÑΓß∩ «í«º¡áτÑ¡¿Ñ
»«½∩, ºáñáεΘÑÑ φΓ« »«½Ñ.
┌───┐ ┌─────────────┐
«í«º¡áτÑ¡¿Ñ »«½∩ ───÷│ . │───÷│¿ñÑ¡Γ¿Σ¿¬áΓ«α│───÷
└───┘ │ »«½∩ │
└─────────────┘
Åα¿óÑñѼ ¡Ñ߬«½∞¬« »α¿¼Ñα«ó «í«º¡áτÑ¡¿∩ »«½Ñ⌐:
Today.Year
Results[1].Count
Results[1].When.Month
é «»ÑαáΓ«αÑ, óσ«ñ∩ΘѼ ó «»ÑαáΓ«α with, «í«º¡áτÑ¡¿ε »«½∩ ¡Ñ
ñ«½ª¡á »αÑñΦÑßΓó«óáΓ∞ ßßδ½¬á ¡á »ÑαѼѡ¡πε, ß«ñÑαªáΘπε ºá»¿ß∞.
Äí«º¡áτÑ¡¿∩ ¬«¼»«¡Ñ¡Γ «íΩѬΓá.
Åα¿ óδí«αÑ ¬«¼»«¡Ñ¡Γ «íΩѬΓá ¿ß»«½∞ºπÑΓß∩ Γᬫ⌐ ªÑ Σ«α¼áΓ, ¬á¬
¿ »α¿ óδí«αÑ »«½∩ ºá»¿ß¿; Γ.Ñ. «¡ ß«ßΓ«¿Γ ¿º φ¬ºÑ¼»½∩αá, Γ«τ¬¿ ¿
¿ñÑ¡Γ¿Σ¿¬áΓ«αá ¬«¼»«¡Ñ¡Γδ. Äí«º¡áτÑ¡¿∩ ¬«¼»«¡Ñ¡Γδ, ¬«Γ«αá∩
«í«º¡áτáÑΓ ¼ÑΓ«ñ, ¡áºδóáÑΓß∩ «í«º¡áτÑ¡¿Ñ¼ ¼ÑΓ«ñá. è φ¬ºÑ¼»½∩απ
«íΩÑ¬Γ¡«ú« Γ¿»á ¼«ªÑΓ íδΓ∞ »α¿¼Ñ¡Ñ¡ «»ÑαáΓ«α with. é φΓ«¼ ß½πτáÑ
»α¿ ßß佬áσ ¡á ¬«¼»«¡Ñ¡Γδ «íΩÑ¬Γ¡«ú« Γ¿»á ¼«ªÑΓ íδΓ∞ »α«»πΘÑ¡
φ¬ºÑ¼»½∩α ¿ Γ«τ¬á.
¥¬ºÑ¼»½∩α ¿ Γ«τ¬á ΓᬠªÑ ¼«úπΓ íδΓ∞ »α«»πΘÑ¡δ ó¡πΓα¿ í½«¬á
¼ÑΓ«ñá, á ¬«úñá «¡¿ ¿ß»«½∞ºπεΓß∩, Γ« ñÑ⌐ßΓóπεΓ ΓᬠªÑ, ¬á¬ Ñß½¿ íδ
»α¿ ßßδ½¬Ñ ¬ ¬«¼»«¡Ñ¡ΓÑ ¿ß»«½∞º«ó὿ß∞ Self ¿ Γ«τ¬á.
ÅÑαѼѡ¡δÑ π¬áºáΓѽÑ⌐ ¿ ñ¿¡á¼¿τÑ߬¿Ñ »ÑαѼѡ¡δÑ.
ç¡áτÑ¡¿Ñ¼ »ÑαѼѡ¡«⌐ π¬áºáΓѽ∩ ∩ó½∩ÑΓß∩ ¿½¿ nil, ¿½¿ áñαÑß
º¡áτÑ¡¿∩, π¬áºδóáεΘ¿⌐ ¡á ñ¿¡á¼¿τÑ߬πε »ÑαѼѡ¡πε.
æßδ½¬á ¡á ñ¿¡á¼¿τÑ߬πε »ÑαѼѡ¡πε, ¡á ¬«Γ«απε π¬áºδóáÑΓ
»ÑαѼѡ¡á∩ π¬áºáΓѽ∞, ºá»¿ßδóáÑΓß∩ ó ó¿ñÑ »ÑαѼѡ¡«⌐ π¬áºáΓѽ∩,
»«ß½Ñ ¬«Γ«α«⌐ ßΓáó¿Γß∩ ß¿¼ó«½ π¬áºáΓѽ∩ (^).
信ἿτÑ߬¿Ñ »ÑαѼѡ¡δÑ ¿ º¡áτÑ¡¿∩ ¿σ π¬áºáΓѽÑ⌐ ß«ºñáεΓß∩ ß
»«¼«Θ∞ε ßΓá¡ñáαΓ¡δσ »α«µÑñπα New ¿ GetMem. éδ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞
«»ÑαáΓ«α @ (»«½πτÑ¡¿Ñ áñαÑßá) ¿ ßΓá¡ñáαΓ¡πε Σπ¡¬µ¿ε Ptr ñ½∩
ß«ºñá¡¿∩ º¡áτÑ¡¿⌐ π¬áºáΓѽ∩, ¬«Γ«αδÑ αáßß¼áΓα¿óáεΓß∩ ¬á¬ π¬áºáΓѽ¿
ñ¿¡á¼¿τÑ߬¿σ »ÑαѼѡ¡δσ.
ç¡áτÑ¡¿Ñ nil ¡Ñ π¬áºδóáÑΓ ¡¿ ¡á ¬á¬πε »ÑαѼѡ¡πε. ÉѺπ½∞ΓáΓ
íπñÑΓ ¡Ñ«»αÑñѽѡ¡δ¼, Ñß½¿ éδ »«»δΓáÑΓÑß∞ »«½πτ¿Γ∞ ñ«ßΓπ» ¬
ñ¿¡á¼¿τÑ߬«⌐ »ÑαѼѡ¡«⌐ »α¿ ¡Ñ«»αÑñѽѡ¡«¼ º¡áτÑ¡¿¿ π¬áºáΓѽ∩ ¿½¿
αáó¡«¼ nil.
Åα¿óÑñѼ ¡Ñ߬«½∞¬« »α¿¼Ñα«ó ßß佫¬ ¡á ñ¿¡á¼¿τÑ߬¿Ñ »ÑαѼѡ¡δÑ:
P1^
P1^.Sibling^
Results[1].Data^
Åα¿óÑñÑ¡¿Ñ Γ¿»«ó »ÑαѼѡ¡δσ.
æßδ½¬á ¡á »ÑαѼѡ¡πε «ñ¡«ú« Γ¿»á ¼«ªÑΓ íδΓ∞ »αÑ«íαẫóá¡á ó
ßß佬π ¡á »ÑαѼѡ¡πε ñαπú«ú« Γ¿»á ß »«¼«Θ∞ε »α¿óÑñÑ¡¿∩ Γ¿»«ó
»ÑαѼѡ¡δσ.
┌─────────────┐ ┌───┐ ┌──────────┐ ┌───┐
»α¿óÑñÑ¡¿Ñ ───÷│¿ñÑ¡Γ¿Σ¿¬áΓ«α├──÷│ ( ├──÷│ßßδ½¬á ¡á ├──÷│ ) ├──÷
Γ¿»«ó │ Γ¿»á │ └───┘ │»ÑαѼѡ¡πε│ └───┘
└─────────────┘ └──────────┘
è«úñá »α¿óÑñÑ¡¿Ñ Γ¿»«ó »α¿¼Ñ¡∩ÑΓß∩ ¬ ßßδ½¬Ñ ¡á »ÑαѼѡ¡πε,
ßßδ½¬á ¡á »ÑαѼѡ¡πε αáßß¼áΓα¿óáÑΓß∩ ¬á¬ φ¬ºÑ¼»½∩α Γ¿»á,
»αÑñßΓáó½Ñ¡¡«ú« ¿ñÑ¡Γ¿Σ¿¬áΓ«α«¼ Γ¿»á. ÉẼÑα »ÑαѼѡ¡«⌐ (τ¿ß½«
íá⌐Γ«ó, ºá¡¿¼áѼδσ »ÑαѼѡ¡«⌐) ñ«½ªÑ¡ íδΓ∞ αáóÑ¡ αẼÑαπ Γ¿»á,
»αÑñßΓáó½Ñ¡¡«ú« ¿ñÑ¡Γ¿Σ¿¬áΓ«α«¼ Γ¿»á. Å«ß½Ñ »α¿óÑñÑ¡¿∩ Γ¿»á
»ÑαѼѡ¡«⌐ ¼«ª¡« π¬áºáΓ∞ «ñ¿¡ ¿½¿ ¡Ñ߬«½∞¬« ¬óá½¿Σ¿¬áΓ«α«ó, Ñß½¿
φΓ« ñ«»π߬áÑΓß∩ π¬áºá¡¡δ¼ Γ¿»«¼.
Åα¿óÑñѼ ¡Ñ߬«½∞¬« »α¿¼Ñα«ó »α¿óÑñÑ¡¿∩ Γ¿»«ó »ÑαѼѡ¡δσ:
type
ByteRec = record
Lo,Hi : Byte;
end;
WordRec = record
Low, High : Word;
end;
PtrRec = record
Ofs, Seg : Word;
end;
BytePtr = ^Byte;
var
B: Byte;
W: Word;
L: LongInt;
P: Pointer;
begin
W := $1234;
B := ByteRec(W).Lo;
ByteRec(W).Hi := 0;
L := $01234567;
W := WordRec(L).Lo;
B := ByteRec(WordRec(L).Lo).Hi;
B := BytePtr(L)^;
P := Ptr($40,$49);
W := PtrRec(P).Seg;
Inc(PtrRec(P).Ofs,4);
end;
ÄΓ¼ÑΓ¿¼ ¿ß»«½∞º«óá¡¿Ñ Γ¿»á ByteRec ñ½∩ ñ«ßΓπ»á ¬ íá⌐Γá¼
¼½áñΦÑ⌐ ¿ ßΓáαΦÑ⌐ τáßΓ¿ ß½«óá; φΓ« ß««ΓóÑΓßΓóπÑΓ óßΓα«Ñ¡¡δ¼
Σπ¡¬µ¿∩¼ Lo ¿ Hi, ºá ¿ß¬½ετÑ¡¿Ñ¼ Γ«ú«, τΓ« »α¿óÑñÑ¡¿Ñ »ÑαѼѡ¡δσ
¼«ª¡« ¿ß»«½∞º«óáΓ∞ Γá¬ªÑ ¿ ó ½Ñó«⌐ τáßΓ¿ «»ÑαáΓ«αá »α¿ßóá¿óá¡¿∩.
Æá¬ªÑ «íαáΓ¿ΓÑ ó¡¿¼á¡¿Ñ ¡á ¿ß»«½∞º«óá¡¿Ñ WordRec ¿ PtrRec Γ¿»«ó ñ½∩
ñ«ßΓπ»á ¬ ¼½áñΦÑ¼π ¿ ßΓáαΦѼπ ß½«óπ τáßΓ¿ ñ½¿¡¡«ú« µÑ½«ú«, ¿ ¬
ßÑú¼Ñ¡Γ¡«⌐ τáßΓ¿ ¿ ß¼ÑΘÑ¡¿ε ó π¬áºáΓѽÑ.
Turbo Pascal »«½¡«ßΓ∞ε »«ññÑনóáÑΓ »α¿óÑñÑ¡¿Ñ Γ¿»«ó
»ÑαѼѡ¡δσ, ó¬½ετá∩ »α«µÑñπα¡δÑ Γ¿»δ. ìá»α¿¼Ñα, ñ½∩ «íΩ∩ó½Ñ¡¿⌐
type
Func = function(X : Integer) : Integer;
var
F: Func;
P: Pointer;
N: Integer;
¼«ª¡« ¡á»¿ßáΓ∞ ß½ÑñπεΘ¿Ñ »α¿ßóá¿óá¡¿∩:
F := Func(P); { »α¿ßó«¿Γ∞ »α«µÑñπα¡«Ñ º¡áτÑ¡¿Ñ ¿º É ó F }
Func(P) := F; { »α¿ßó«¿Γ∞ »α«µÑñπα¡«Ñ º¡áτÑ¡¿Ñ ¿º F ó P }
@F := P; { »α¿ßó«¿Γ∞ º¡áτÑ¡¿Ñ π¬áºáΓѽ∩ ¿º É ó F }
P := @F; { »α¿ßó«¿Γ∞ º¡áτÑ¡¿Ñ π¬áºáΓѽ∩ ¿º F ó P }
N := F(N); { ó맮ó Σπ¡¬µ¿¿ τÑαѺ F }
N := Func(P)(N); { ó맮ó Σπ¡¬µ¿¿ τÑαѺ P }
çá¼ÑΓ¿¼, τΓ« áñαÑß¡δ⌐ «»ÑαáΓ«α @, »α¿¼Ñ¡Ñ¡¡δ⌐ ¬ »α«µÑñπα¡«⌐
»ÑαѼѡ¡«⌐ ¼«ªÑΓ ¿ß»«½∞º«óáΓ∞ß∩ ó ½Ñó«⌐ τáßΓ¿ »α¿ßóá¿óá¡¿∩. çá¼ÑΓ¿¼
ΓᬪÑ, τΓ« »α¿óÑñÑ¡¿Ñ Γ¿»á ó »«ß½Ññª¡Ñ⌐ ßΓα«¬Ñ óδºδóáÑΓ Σπ¡¬µ¿ε
τÑαѺ »ÑαѼѡ¡πε π¬áºáΓѽ∞.