بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
5-1-رشتههاي کاراکتري
براي تعريف رشتههاي کاراکتري در متلب از علامت ‘ ‘ استفاده ميشود:
مثال:
>> s=‘This is a character string’;
>> size(s)
ans=
1 26
نکته: در متلب رشتههاي کاراکتري نيز بعنوان ماتريس شناخته ميشوند بطوريکه هر کاراکتر يک عنصر ماتريس محسوب ميشود.
اسلاید 2 :
5-2-نمايش کد اسکي کاراکترها: تابع abs
براي نمايش کد اسکي يک رشته ميتوان از تابع abs متلب استفاده کرد:
>> s= ‘Hello’
>> u=abs(s)
u=
72 101 108 108 111
اسلاید 3 :
5-3-تبديل کد اسکي به کاراکتر
براي تبديل کد اسکي به کاراکتر از تابع char استفاده کنيد.
>> s= ‘Hello’
>> u=abs(s)
u=
72 101 108 108 111
>> sNew=char(u)
sNew=
Hello
اسلاید 4 :
5-4-رفتار ماتريسي رشتهها
با رشتههاي کاراکتري متلب دقيقا ميتوان مانند ماتريسهاي عددي رفتار کرد. مثلا ميتوان عمليات رياضي را بر آنها اعمال کرد. در اينصورت متلب کد اسکي رشته را مورد استفاده قرار ميدهد.
مثال: نمايش رشته از آخر به اول
>> s= ‘Hello’
>> sInv=s( end : -1 : 1);
>>disp(sInv)
olleH
اسلاید 5 :
5-5-ايجاد ماتريسهاي کاراکتري(روش اول)
براي ايجاد يک ماتريس کاراکتري ميتوان از علائم [ ] و ; مانند ايجاد ماتريسهاي عددي استفاده کرد. اما بايد دقت شود که تعداد ستونهاي هر سطر مساوي باشند:
>> sm=[‘This is first line’ ; ‘This is second line’]
??? Error using ==> vertcat
All rows in the bracketed expression must have the same
number of columns.
>> sm=[‘This is first line ’ يک فاصله خالي در انتهاي خط
‘This is second line’];
اسلاید 6 :
5-6-ايجاد ماتريسهاي کاراکتري(روش دوم)
روش بهتر براي ايجاد يک ماتريس کاراکتري استفاده از تابع char ميباشد:
>> line1=‘This is first line’ ;
>> line2= ‘This is second line’;
>>sm=char(line1,line2)
sm=
This is first line
This is second line
اسلاید 7 :
5-7-گرفتن رشته در حين اجراي برنامه
براي گرفتن يک رشته از ورودي با استفاده از تابع input در حين اجراي برنامه دو روش را ميتوان بکار برد:
روش اول روش معمول استفاده از اين تابع است. يعني تابع مذکور را تنها با يک آرگومان ورودي بکار ميبريم. در اينصورت در حين اجرا، بايد رشته را در داخل ‘ ‘ قرار داد.
روش بهتر استفاده از تابع input با يک آرگومان دوم ‘s’ ميباشد که در اينصورت متلب ورودي کاربر را بعنوان رشته تلقي ميکند حتي اگر يک عدد يا نام يک متغير باشد.
اسلاید 8 :
5-7-گرفتن رشته در حين اجراي برنامه-ادامه-
مثال:
>>s=input(‘Please answer Yes or No: ’)
Please answer Yes or No: ‘No’
s=
No
----------------------
>>s=input(‘Please answer Yes or No: ’,’s’)
Please answer Yes or No: No
s=
No
اسلاید 9 :
5-8- ساير توابع کار با رشتهها
strcmp(s1,s2) :درصورتيکه دو رشته يکسان باشند 1 و درغير اينصورت 0 باز ميگرداند
upper : تماي حروف يک رشته را به حروف بزرگ تبديل ميکند
lower :تمامي حروف يک رشته را به حروف کوچک تبديل ميکند
num2str :تبديل عدد به رشته عددي
str2num :تبديل رشته عددي به عدد
mat2str تبدیل ماتریسی از اعداد به رشته:
eval :اجرای فرمانی از متلب که بصورت رشته وارد شده باشد
oنکته: تفاوت تابع num2str با تابع mat2str در این است که در تابع دوم رشته بازگردانده شده قابل اجرا توسط تابع eval است.
اسلاید 10 :
تکلیف ۱-۵: برنامهای بنویسید که دو ماتریس عددی را از کاربر بگیرد و در متغیرهای x و y قرار دهد. سپس یک رشته کاراکتری شامل عبارتی ریاضی از متغیرهای x و y را از کاربر بگیرد و نتیجه آنرا بر اساس مقادیر متغیرهای ورودی تعیین کند.
تکلیف ۲-۵: برنامهای بنویسید که یک رشته کاراکتری را از کاربر بگیرد و با تغییر کد اسکی آن، آنرا بصورت رمز در آورده نمایش دهد.
تکلیف ۳-۵: برنامهای بنویسید که نتایج تمرین ۲-۵ را از حالت رمز خارج کرده و نمایش دهد.