"Вычисления, визуализация и программирование в среде MATLAB 5.x" - читать интересную книгу автора (Мартынов Н. Н., Иванов А. П.)

╬Єфхы№э√х  ўхщъш ьрёёштр  ўххъ ьюуєЄ ёюфхЁцрЄ№ фрээ√х Ёрчэ√ї Єшяют. ─ы  яЁшьхЁр яюёЄЁюшь ьрёёшт  ўххъ 2x2, ¤ыхьхэЄрьш ъюЄюЁюую  ты ■Єё   ўхщъш, ёюфхЁцр∙шх ёююЄтхЄёЄтхээю ЄхъёЄютє■ ёЄЁюъє (юфэюьхЁэ√щ ьрёёшт Єшяр char), ўшёыютє■ ьрЄЁшЎє 3 ї 3, ёЄЁєъЄєЁє MyStruct ш ўшёыютє■ тхъЄюЁ-ёЄЁюъє 1 ї 3.
╤эрўрыр ёючфрфшь ёЄЁєъЄєЁє MyStruct:
MyStruct = struct('fieldl',[ 1 2 3],'field2','Hello');
яюёых ўхую ш ёЇюЁьшЁєхь шёъюь√щ ьрёёшт  ўххъ яю¤ыхьхэЄэ√ьш яЁшётрштр- эш ьш:
MyCellArray( 1, 1 ) = { 'Bonjour!' };
MyCellArray( 1, 2 ) = { [ 1 2 3; 4 5 6; 7 8 9 ] };
MyCellArray( 2, 1 ) = { MyStruct };
MyCellArray( 2, 2 ) = { [ 9 7 5 ] };
MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх
103
╧юёЄЁюхээ√щ ьрёёшт MyCellArray  ты хЄё  ьрёёштюь  ўххъ, Єръ ъръ ¤ыхьхэЄрь ¤Єюую ьрёёштр с√ыш яЁшётюхэ√ шьхээю  ўхщъш, ърцфр  шч ъюЄюЁ√ї ЇюЁьшЁютрырё№ ё яюью∙№■ ЇшуєЁэ√ї ёъюсюъ. ╤юфхЁцшьюх ёююЄтхЄёЄтє■∙шї  ўххъ юяЁхфхы хЄё  т√Ёрцхэш ьш тэєЄЁш ЇшуєЁэ√ї ёъюсюъ. ╧ю¤Єюьє  ўхщър MyCellArray (1,1) ёюфхЁцшЄ ЄхъёЄютє■ ёЄЁюъє 'Bonjour!',  ўхщър MyCellArray(1,2) ёюфхЁцшЄ ўшёыютє■ ьрЄЁшЎє [1 2 3; 4 5 с; 7 8 9],  ўхщър MyCellArray (2,1) ёюфхЁцшЄ ёЄЁєъЄєЁє MyStruct ш, эръюэхЎ,  ўхщър MyCellArray (2,2) ёюфхЁцшЄ ўшёыютє■ тхъЄюЁ-ёЄЁюъє [9 7 5 ].
╥хяхЁ№ ёяЁюёшь ёшёЄхьє MATLAB ю Єшях ьрёёштр MyCellArray, фы  ўхую ттхфхь ш шёяюыэшь (эрцрЄшхь ъыртш°ш Enter) ъюьрэфє
whos MyCellArray эр ўЄю яюыєўшь юЄтхЄ, яЁхфёЄртыхээ√щ эр Ёшё. 3.6.
*> MATLAB Command Window
File Edit Window Help
ig j
╗ whos MyCellArray Name Size Bytes Class
MyCellArray 2x2 762 cell airay
Grand total is 34 elements using 762 bytes
: ╨шёєэюъ 3.6
╧юёЄЁюхээ√щ эрьш ьрёёшт  ўххъ MyCellArray ёюфхЁцшЄ ЁрчэюЁюфэ√х фрээ√х, ю ўхь эрь ш ёююс∙рхЄ ёшёЄхьр MATLAB яЁш ттюфх шьхэш ¤Єюую ьрёёштр ш эрцрЄшш ъыртш°ш Enter (ёь. Ёшё. 3.7).
Х> MATLAB Command Window
De_fcdr. Wndo,/ ╓х1Ё_
D e? ж IB -' ffl :g ?
╗ MyCellAiray ans =
'Bonjoiir!' [3x3 double] [lxl struct] [1x3 double]
╨шёєэюъ 3.7
104 ├ыртр 3. ╠рёёшт√ ёшьтюыют, ёЄЁєъЄєЁ,  ўххъ. ╘рщыют√х юяхЁрЎшш
╧Ёш ¤Єюь яюърч√трхЄё  ёюфхЁцшьюх эх тёхї  ўххъ ¤Єюую ьрёёштр. ┴юыхх яюфЁюсэє■ шэЇюЁьрЎш■ ьюцэю яюыєўшЄ№, т√чтрт ЇєэъЎш■ celldisp:
celldisp( MyCellArray )
MyCellArray{l,l} = Bonjour!
MyCellArray{2,1} = fieldl : [12 3] field2 : 'Hello'
MyCellArray{l,2} = 1 2 3 4 5 6 7 8 9
MyCellArray(2,2} = 9 7 5
╬Єё■фр їюЁю°ю тшфэю, ўЄю фы  Єюую, ўЄюс√ яюфюсЁрЄ№ё  ъ ёюфхЁцшьюьє  ўххъ, эєцэю шэфхъёшЁютрЄ№ ьрёёшт  ўххъ яЁш яюью∙ш ЇшуєЁэ√ї ёъюсюъ. ╧Ёш юс√ўэющ шэфхъёрЎшш ъЁєуы√ьш ёъюсърьш ь√ шч ьрёёштр  ўххъ шчтыхърхь юЄфхы№эє■  ўхщъє, ъюЄюЁр  ёрьр  ты хЄё  ьрёёштюь. ═ряюьшэрхь х∙х Ёрч ю Єюь, ўЄю ёыхфєхЄ ЁрчышўрЄ№  ўхщъє ш хх ёюфхЁцшьюх (ёь. т√°х).
╠рёёшт√  ўххъ яюыэюёЄ№■ Ёх°р■Є Єшяютє■ чрфрўє їЁрэхэш  эхёъюы№ъшї ёЄЁюъют√ї фрээ√ї яюф юфэшь шьхэхь. ╨рэ№°х ь√ єцх ЇюЁьшЁютрыш ьрЄЁшЎ√ Єшяр char, ърцфр  ёЄЁюър ъюЄюЁ√ї юс чрэр с√ыр шьхЄ№ юфэє ш Єє цх фышэє. ▌Єю юўхтшфэ√ь юсЁрчюь юуЁрэшўштрхЄ яЁшьхэхэшх Єръюую Ёх°хэш . ┬ ёыєўрх ьрёёштр  ўххъ Єръюую юуЁрэшўхэш  эхЄ:
cellNames{ 1 } = 'functionl'; cellNames{ 2 } = 'func2';
╟фхё№ ь√ яЁюфхьюэёЄЁшЁютрыш яЁшьхэхэшх ЇшуєЁэ√ї ёъюсюъ т Ёюыш шэфхъёшЁє■∙шї ¤ыхьхэЄют, Єръ ўЄю шёяюы№чютрЄ№ ЇшуєЁэ√х ёъюсъш т яЁрт√ї ўрёЄ ї юяхЁрЎшщ яЁшётрштрэш  эх эєцэю (Єрь ЄхяхЁ№ яЁшёєЄёЄтє■Є чэрўхэш , р эх  ўхщъш).
┬ Ёхчєы№ЄрЄх яюф юфэшь шьхэхь cellNames їЁрэ Єё  фтх ЄхъёЄют√х ёЄЁюъш, фюёЄєя ъ ърцфющ шч ъюЄюЁ√ї юёє∙хёЄты хЄё  яю шэфхъёє т ёююЄтхЄёЄтшш ё ёшэЄръёшёюь ьрёёштр  ўххъ. ┬юЄ ъюф, ъюЄюЁ√щ шчтыхърхЄ ¤Єш ёЄЁюъш шч ьрёёштр  ўххъ cellNames ш чряюьшэрхЄ шї т юЄфхы№э√ї яхЁхьхээ√ї strl ш str2:
strl = cellNames{ 1 }; str2 = cellNames{ 2 };
╧юърчрээюх т√°х яю¤ыхьхэЄэюх ёючфрэшх ьрёёштр  ўххъ эх¤ЇЇхъЄштэю ё Єюўъш чЁхэш  яЁюшчтюфшЄхы№эюёЄш. ▌Єю эх ёючфрхЄ яЁюсыхь т ьхфыхээюь шэЄхЁръ-
MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх 105
Єштэюь Ёхцшьх ЁрсюЄ√, эю т яЁюуЁрььэюь Ёхцшьх ¤ЄюЄ яЁюЎхёё ыєў°х яЁхфтрЁшЄ№ т√чютюь ЇєэъЎшш cell:
MyCellArray = cell( 2, 2 ) ;
ъюЄюЁр  ёЁрчє ёючфрёЄ ьрёёшт  ўххъ ЄЁхсєхьющ ЁрчьхЁэюёЄш ш ЁрчьхЁют, яЁшўхь ърцфр   ўхщър сєфхЄ яєёЄющ. ╧єёЄ√х  ўхщъш юсючэрўр■Єё  ъръ { [ ] }. ╟рЄхь ьюцэю юёє∙хёЄты Є№ Ёрэхх ЁрёёьюЄЁхээ√х яю¤ыхьхэЄэ√х яЁшётрштрэш , Єръ ъръ ЄхяхЁ№ юэш эх ЄЁхсє■Є яхЁхёЄЁющъш ёЄЁєъЄєЁ√ ьрёёштр ё ърцф√ь эют√ь яЁшётрштрэшхь. ╤юфхЁцшь√ь яєёЄющ  ўхщъш  ты хЄё  яєёЄющ ўшёыютющ ьрёёшт, ъюЄюЁ√щ, ъръ ь√ чэрхь, юсючэрўрхЄё  [ ]. ╫Єюс√ єфрышЄ№ эхъюЄюЁ√щ фшрярчюэ  ўххъ шч ьрёёштр  ўххъ, эєцэю ¤Єюьє фшрярчюэє яЁшётюшЄ№ чэрўхэшх яєёЄюую ьрёёштр [ ]:
MyCellArray( 2, : ) = [];
╥хяхЁ№ ьрёёшт  ўххъ MyCellArray шьххЄ ЁрчьхЁ 1x2, Єръ ъръ ь√ Єюы№ъю ўЄю єфрышыш тё■ тЄюЁє■ ёЄЁюъє ¤Єюую ьрёёштр  ўххъ.
─Ёєушь ёяюёюсюь яют√°хэш  ¤ЇЇхъЄштэюёЄш (с√ёЄЁюфхщёЄтш ) яЁш ёючфрэшш ьрёёштют  ўххъ  ты хЄё  тючьюцэюёЄ№ шёяюы№чютрэш  хфшэёЄтхээющ ярЁ√ ЇшуєЁэ√ї ёъюсюъ фы  ёючфрэш  ёЁрчє тёхї ¤ыхьхэЄют ьрёёштр  ўххъ. ═ряЁшьхЁ, тьхёЄю яюёЄхяхээюую яю¤ыхьхэЄэюую яЁшётрштрэш 
р(1,1)={1}; a(l,2)={'asd'}; р(2,1)={[1 2]}; р(2,2)={3}; ьюцэю ёючфрЄ№ тхё№ ьрёёшт  ўххъ чр юфшэ Ёрч: р = { 1, 'asd'; [1 2], 3};