ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ИсслСдованиС возмоТностСй стандартных классов VAST. 
ΠžΡΠ½ΠΎΠ²Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Π² VAST

Лабораторная Ρ€Π°Π±ΠΎΡ‚Π°ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ Π½Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ использованиС слоТных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, поэтому всС Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ интСрфСйсом. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ класс ΠΊΠ°ΠΊ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈ Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π³ΠΎ Laba1 (рис. 1). Π‘Ρ€Π΅Π΄ΠΈ мноТСства ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… классов Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько (3βˆ’4 ΡˆΡ‚ΡƒΠΊΠΈ), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Ρ€Π°Π·Π½Ρ‹ΠΌ классам, ΠΈ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ИсслСдованиС возмоТностСй стандартных классов VAST. ΠžΡΠ½ΠΎΠ²Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Π² VAST (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ГосударствСнноС ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΡƒΡ‡Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ образования

«ΠœΠΎΡΠΊΠΎΠ²ΡΠΊΠΈΠΉ государствСнный институт Ρ€Π°Π΄ΠΈΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, элСктроники ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠΊΠΈ (тСхничСский унивСрситСт)» МИРЭА ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠžΡ‚Ρ‡Π΅Ρ‚ ΠΏΠΎ Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ № 2

ИсслСдованиС возмоТностСй стандартных классов VAST.

ΠžΡΠ½ΠΎΠ²Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Π² VAST

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ» Π‘Ρ‚ΡƒΠ΄Π΅Π½Ρ‚ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π˜Π’Π’-2−10

КовалСв А.Π’.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ» Π‘Ρ‚. ΠΏΡ€Π΅ΠΏ. ΠΊΠ°Ρ„. Π’Π’ Π‘ΠΌΠΈΡ€Π½ΠΎΠ² Π‘.Π‘.

Москва — 2012 Π³.

1. ЦСль Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

2. ΠžΠ±Ρ‰Π°Ρ постановка Π·Π°Π΄Π°Ρ‡ΠΈ

3. ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

4. РСшСниС

4.1 ИсслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «detect: ifNone:» класса Set

4.1.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ

4.1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for:»

4.1.3 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

4.2 ИсслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «to:by:do:» класса Number

4.2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ

4.2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for:by:do:»

4.2.3 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

4.3 ИсслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «copy: ReplaceFrom: to: with:» класса OrderedCollection

4.3.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ

4.3.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for: copyReplaceFrom: to: with:»

4.3.3 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

1. ЦСль Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π˜ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности стандартных классов прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… использования ΠΈΠ·Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

Π˜Π·ΡƒΡ‡ΠΈΡ‚ΡŒ основы Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Π² ΡΡ€Π΅Π΄Π΅ VAST.

2. ΠžΠ±Ρ‰Π°Ρ постановка Π·Π°Π΄Π°Ρ‡ΠΈ ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ просмотра ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ классов (Classes Browser) ознакомится с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ возмоТностями стандартных классов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ…. К ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΌ классам относятся, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

— Π’Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ (Magnitude) ΠΈ Π΅Π³ΠΎ подклассы:

— ΠŸΠ°Ρ€Π°ΠšΠ»ΡŽΡ‡Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Association);

— Π‘ΠΈΠΌΠ²ΠΎΠ» (Character);

— Π”Π°Ρ‚Π° (Date);

— Π’рСмя (Time);

— Π§ΠΈΡΠ»ΠΎ (Number) ΠΈ Π΅Π³ΠΎ подклассы

— ΠΠ°Π±ΠΎΡ€Ρ‹ (Collection) ΠΈ Π΅Π³ΠΎ подклассы:

— ΠΠ°Π±ΠΎΡ€Π‘Дублями (Bag);

— ΠΠ°Π±ΠΎΡ€Π‘Π΅Π·Π”ΡƒΠ±Π»Π΅ΠΉ (Set);

— Π‘Π»ΠΎΠ²Π°Ρ€ΡŒ (Dictionary);

— Π£ΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡Π΅Π½Π½Ρ‹ΠΉΠΠ°Π±ΠΎΡ€ (OrderedCollection);

— ΠžΡ‚сортированныйНабор (SortedCollection);

— ΠœΠ°ΡΡΠΈΠ² (Array);

— Π‘Ρ‚Ρ€ΠΎΠΊΠ° (String);

— ΠΈ Ρ‚. Π΄.

Π‘Ρ€Π΅Π΄ΠΈ мноТСства ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… классов Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько (3−4 ΡˆΡ‚ΡƒΠΊΠΈ), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Ρ€Π°Π·Π½Ρ‹ΠΌ классам, ΠΈ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ, для Ρ‡Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΡΡ€Π΅Π΄Π΅ VAST ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ интСрфСйсом, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ:

— Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для тСстирования Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²;

— Π²Ρ‹Π·ΠΎΠ² Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²;

— Π²Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

3. ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ Π’ ΡΠΎΠΎΡ‚вСтствии с ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠΌ 2, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для тСстирования ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²:

Класс Set ΠΌΠ΅Ρ‚ΠΎΠ΄ экзСмпляра

Detect:ifNone:

" Answer the first element of the receiver for

which the evaluation of the one argument block, aBlock returns true.

If no such element is detected, answer the result of evaluating

exceptionBlock with no arguments.

Fail if aBlock is not a one-argument Block

Fail if aBlock does not evaluate to a Boolean

Fail if no element is found and exceptionBlock is not a

zero-argument Block."

Rkfcc Number vtnjl 'rptvgkzhf to^by^do

" Answer an Interval from the receiver up to

a Number, stop incrementing by a Number,

step. Evaluate the Block, aBlock, for each

element of the interval. Answer stop.

Fail if stop is not a type of Number.

Fail if step is not a type of Number.

Fail if aBlock is not a one-argument Block."

Класс OrderedCollection ΠΌΠ΅Ρ‚ΠΎΠ΄ экзСмпляра copyReplaceFrom: start to: stop with: replacementCollection

" Answer a SequenceableCollection which is a copy of the receiver in which the elements etween the Integer index start and the

Integer index stop have each been replaced by the elements

of the SequenceableCollection replacementCollection. This method

can be used to perform insertion, replacement and to append.

start and stop are first adjusted to be within the bounds of the

receiver. If stop > start then the elements at indices are replaced

with replacementCollection. If stop < start, then this is an insertion.

Insertion will occur before the element at the index represented by

start. If start > receiver size, this means append after the last

element.

Fail if start in not an Integer

Fail if stop is not an Integer."

4. РСшСниС Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Laba, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒΡΡ поставлСнныС Π·Π°Π΄Π°Ρ‡ΠΈ (Ρ„Π°ΠΉΠ», с ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ прилагаСтся ΠΊ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρƒ).

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ Π½Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ использованиС слоТных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, поэтому всС Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ интСрфСйсом. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ класс ΠΊΠ°ΠΊ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈ Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π³ΠΎ Laba1 (рис. 1).

Рис. 1

4.1 ИсслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° detect: ifNone: класса Set

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π°ΠΌ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… понадобится 1 строка: строка Π³Π΄Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ элСмСнты Π² ΠΌΠ°ΡΡΠΈΠ². ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ.

4.1.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ модСль для хранСния Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ связи, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ тСстированиС рассматриваСмого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° (рис.2).

Рис. 2

ОписаниС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… связСй:

1. Бвязь «ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ дСйствиС» ΠΌΠ΅ΠΆΠ΄Ρƒ событиСм «clicked» ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «add:» элСмСнта OrderedCollection.

2. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «value» связи № 1.

3. Бвязь «ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ дСйствиС» ΠΌΠ΅ΠΆΠ΄Ρƒ событиСм «clicked» ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎΠΌ «object» элСмСнта Label.

4. Бвязь «ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠΎΠ΄» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «anObject» связи № 3 ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «for:».

5. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «self» элСмСнта OrderedCollection ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr1» связи № 4.

4.1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for:»

Π’Ρ‹Π·ΠΎΠ² исслСдуСмого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° detect: ifNone: класса Set осущСствим посрСдством ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for:», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ (рис. 3)

Рис.№ 3

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ массива collection. Π”Π°Π»Π΅Π΅ этому массиву отправляСтся сообщСниС asSet ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠ±ΠΈΡ€Π°Π΅Ρ‚ всС повторСния элСмСнтов. Π—Π°Ρ‚Π΅ΠΌ ΠΈΠ΄Ρ‘Ρ‚ исслСдуСмый ΠΌΠ΅Ρ‚ΠΎΠ΄ detect: ifNone: ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, ΠΈΡ‰Π΅Ρ‚ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ элСмСнт «6», ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ «Yes» Ссли Ρ‚Π°ΠΊΠΎΠΉ элСмСнт Π½Π°ΠΉΠ΄Π΅Π½ ΠΈ «No» Ссли Ρ‚Π°ΠΊΠΎΠΉ элСмСнт Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½.

4.1.3 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π’Π²Π΅Π΄Π΅ΠΌ тСстовыС Π΄Π°Π½Π½Ρ‹Π΅ для тСстирования Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (числа 1 3 6) (рис. 4).

Рис. 4

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ Π²Π΅Ρ€Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

4.2 ИсслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° to: by:do: класса Number

ΠœΠ΅Ρ‚ΠΎΠ΄ примСняСтся для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ числа, Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π΄ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΡΡ‚ΠΈΡΡŒ счёт, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ шага (Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ исходноС число с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ шагом) ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ aBlock, ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ дСйствиС Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ 2 ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΎΠ±ΡŒΠ΅ΠΊΡ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ примСняСтся Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ класса Number.

4.2.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Для тСстирования ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ 3 тСкстовых ΠΎΠΊΠ½Π°: для исходного элСмСнта ΠΈ Π΄Π»Ρ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² stop ΠΈ step. А Ρ‚Π°ΠΊΠΆΠ΅ Label для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ, Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄.

Рис. 5

1. Бвязь «ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ дСйствиС» ΠΌΠ΅ΠΆΠ΄Ρƒ событиСм «clicked» ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎΠΌ «value» элСмСнта Label.

2. Бвязь «ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠΎΠ΄» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «anObject» связи № 1 ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «from:to:by:».

3 Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr1» связи № 2.

4. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr2» связи № 2.

5. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr3» связи № 2.

4.2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «from:by:to:»

Π’Ρ‹Π·ΠΎΠ² исслСдуСмого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «to:by:do:» класса number осущСствим посрСдством ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «from:by:to:», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ (рис. 6)

Рис. 6

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ «start» ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ «stop» ΠΈ «step». Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Π·Π° ΡΡ‡Ρ‘Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ «sum» ΠΈ Π΄Π΅ΠΉΡΡ‚вия описанного Π² Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π΅ «do:» Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ сумму всСх элСмСнтов начиная ΠΎΡ‚ «start», заканчивая «stop», с ΡˆΠ°Π³ΠΎΠΌ «step» ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° start = 1, stop = 4, step = 1

1 + 2 + 3 + 4 = 10

4.2.3 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Запустим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΠΌ исходныС Π΄Π°Π½Π½Ρ‹Π΅ (рис. 7).

Рис. 7

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π²Π΅Ρ€Π΅Π½. (рис.8).

Рис. 8

4.3. ИсслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° copyReplaceFrom: to:with: класса OrderedCollection

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ массив. Π’ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° входят 2 числа ΠΈ 1 массив, с Π·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΡ‹ΠΌΠΈ значСниями. Π‘Π°ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ удаляСт Π² ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ массивС элСмСнты начиная с 1Π³ΠΎ ΠΏΠ°Ρ€ΠΌΠ΅Ρ‚Ρ€Π°, Π΄ΠΎ 2Π³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π²ΡΡ‚авляСт Π½Π° ΡΡ‚ΠΎ мСсто элСмСнты массива 3Π³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

4.3.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Для тСстирования ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½ΡƒΠΆΠ½Ρ‹ 2 массива ΠΈ 2 числа, Π·Π°Π΄Π°Π΄ΠΈΠΌ 2 массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ 2 Π½Π΅Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов OrderedColelction ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ систСму добавлСния элСмСнтов, Π² Π²ΠΈΠ΄Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Ρ‚Скстового поля Π²Π²ΠΎΠ΄Π°, 2 числа зададутся прсотыми тСкстовыми полями. Π”Π°Π»Π΅Π΅ потрСбуСтся Label для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ° для запуска ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for: copyReplaceFrom: to:

with:"

Рис. 9

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ связи:

1. Бвязь «ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ дСйствиС» ΠΌΠ΅ΠΆΠ΄Ρƒ событиСм «clicked» ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «add:» элСмСнта OrderedCollection1.

2. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «value» связи № 1.

3. Бвязь «ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ дСйствиС» ΠΌΠ΅ΠΆΠ΄Ρƒ событиСм «clicked» ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «add:» элСмСнта OrderedCollection2.

4. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «value» связи № 3.

5. Бвязь «ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ дСйствиС» ΠΌΠ΅ΠΆΠ΄Ρƒ событиСм «clicked» ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎΠΌ «value» элСмСнта Label.

6. Бвязь «ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠΎΠ΄» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «anObject» связи № 5 ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «for: copyReplaceFrom: to: with:»

7 Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr2» связи № 6.

8. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «object» тСкстового поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr3» связи № 6.

9. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «self» элСмСнта OrderedCollection1 ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr1» связи № 4.

10. Бвязь «Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€» ΠΌΠ΅ΠΆΠ΄Ρƒ свойством «self» элСмСнта OrderedCollection2 ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «parametr4» связи № 4.

4.3.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for: copyReplaceFrom: to: with»

Π’Ρ‹Π·ΠΎΠ² исслСдуСмого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «copyReplaceFrom:to:with:» класса number осущСствим посрСдством ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° «for: copyReplaceFrom: to: with», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ (рис. 10)

Рис. 10

класс Π΄Π°Π½Π½Ρ‹Π΅ тСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ массив исходных Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π½ΠΎΠΌΠ΅Ρ€Π° элСмСнта с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π°Π΄ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π½ΠΎΠΌΠ΅Ρ€Π° элСмСнта Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ стоит Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнтов ΠΈ ΠΌΠ°ΡΡΠΈΠ² с Π·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΡ‹ΠΌΠΈ элСмСнтами. ВсС эти ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² ΠΈΡΡΠ»Π΅Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ пСрСмСнная «Π°» слуТит для Π²Ρ‹Π²ΠΎΠ΄Π° значСния ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ массива.

4.3.3 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π’Π²Π΅Π΄Π΅ΠΌ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ массив (1 2 3 4 5), Π²Ρ‚ΠΎΡ€ΠΎΠΉ массив (0 0) ΠΈ Π·Π°Π΄Π°Π΄ΠΈΠΌ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ со 2 элСмСнта ΠΏΠΎ 4 (рис. 11).

Рис. 11

ВСстированиС ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Π°. (рис. 12).

Рис. 11

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ