برق، الکترونیک و مخابرات

پاورپوینت فصل پنجم آموزش متلب

فصل پنجم: کار با رشته های کاراکتری آموزش متلب در رشته برق

محمد عبدزاده

صفحه 1:
کلاس آموزشی عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 2:
های کاراکتری برای تعریف رشته‌های کاراکتری در متلب از علامت * * استفاده می‌شود: مثال: ‎s='This is a character string’;‏ >> ‎size(s)‏ >> ‎ans=‏ ‏26 1 نکته: در متلب رشته‌های کاراکتری نیز بعنوان ماتریس شناخته می‌شوند بطوریکه هر کاراکتر یک عنصر ماتربس محسوب می‌شود. عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 3:
۵-۲-نمایش کد اسکی کاراکترها: تابع 305 بای تحاسی سیک عم وان ام 35 حطج استفاده کرد: ‎s= ‘Hello’‏ >> ‎u=abs(s)‏ >> ‎u=‏ ‏111 108 108 101 72 عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 4:
۵-۳-تبدیل کد اسکی به کاراکتر برای تبدیل کد اسکی به کاراکتر از تابع ۲18۳ استفاده کنید. <و << ‎u=abs(s)‏ >> u= 72 101 108 108 1 >> sNew=char(u) sNew= Hello عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 5:
۵-۴-رفتار ماتریسی رشته‌ها با رشته‌های کاراکتری متلب دقیقا می‌توان مانند ماتریسهای عددی رفتار کرد. مثلا می‌توان عملیات ریاضی را بر آنها اعمال کرد. در اینصورت متلب کد اسکی رشته را مورد استفاده قرار می‌دهد. مثال: نمایش رشته از آخر به اول ‎s= ‘Hello’‏ >> ‎sInv=s( end: -1: 1);‏ >> ‎>>disp(sinv)‏ ‎olleH‏ عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 6:
۵-۵-ایجاد ماتریسهای کاراکتری(روش اول) برای ایجاد یک ماتریس کاراکتری می‌توان از علائم | ] و : مانند ایجاد ماتریس‌های عددی استفاده کرد. اما باید دفت شود که تعداد ستونهای هر سطر مساوی باشند: ‎sm=[This is first line’ ; ‘This is second line’]‏ >> ‎Error using ==> vertcat‏ ?22 ‎All rows in the bracketed expression must have the same‏ ‎number of columns.‏ بكفاصله ‎sm=(‘This is first line’ Lackoil alts‏ >> ‎‘This is second line’];‏ عباس طوییانشگاه صنعتی اصتهان

صفحه 7:
۵-۶-ایجاد ماتریسهای کاراکتری(روش دوم) روش بهتر برای ایجاه یک ماتریس کاراکتری استفاده از تابع 6۳3۳ می‌باشد: ‎linel='This is first line’ ;‏ >> ‎line2= ‘This is second line’;‏ >> ‎>>sm=char(linel,line2)‏ ‎sm=‏ ‎This is first line‏ ‎This is second line‏ عباس طوییانشگاه صنعتی اصتهان

صفحه 8:
۵-۷-گرفتن رشته در حین اجرای برنامه برای گرفتن یک رشته از ورودی با استفاده از تابع 1۳010۴ در حین اجرای برنامه دو روش را می‌توان بکار برد: روش اول روش معمول استفاده از اين تابع است. یعنی تابع مذکور را تنها با یک آرگومان ورودی بکار می‌بريم. در اینصورت در حین اجراه باید رشته را در داخل ** قرار ‎ab‏ روش بهتر استفاده از تابع الا00 با یک آرگومان دوم *5" می‌باشد که در اینصورت متلب ورودی کاربر را بعنوان رشته تلقی می‌کند حتی اگر یک عدديا نام یک متغير باش عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 9:
فصل پنجم: متن ۵-۷ -گرفتن, رشته در حین اجرای برنامه-ادامه- مثال: ‎>>s=input(‘Please answer Yes or No: ’)‏ ‎Please answer Yes or No: ‘No’‏ >>s=input(‘Please answer Yes or No: ’,’s’) Please answer Yes or No: No s= No عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 10:
فصل پنجم: متن Ge Soe strcmp(s1,s2) ‏لينصويت» باز میگسردلند:‎ pigs 9 VES LS ‏ديصويتيكه دو رشته‎ upper = Se lower Big Sag Shy a ty a Kg ale num2str — oe str2num fone apo at :تبدیل‌ماتریسو از لعداد بسه پشته ‎mat2str‏ لجرلیفسرمانی از متلبکه بصورتوشته وارد شسده بساشد: ‎eval‏ ‎a‏ نکته: تفاوت تابع ۱۲25/۲ با تابع ۲۱۵25۳ در این است که در تابع دوم رشته بازگردانده شده قابل اجرا توسط تابع 6۷۱ است. ‏عباس طبیی‌دنشگاه صنعتى اصقهان ‎

صفحه 11:
۵-۸ سای توايع کار با رشته ها-ادامهج مثال: >> a=input(‘Enter <a> value=‘); enter <a> value= 12 >> disp({‘You number is’, num2str(a) , * . Thank you!’]); Your number is 12 . Thank you! عباس طبیی‌دنشگاه صنعتى اصقهان

صفحه 12:
تکلیف ۵-۱: برنامه‌ای بنویسید که دو ماتریس عددی را از کاربر بگیرد و در متغیرهای کا و ۷ قرار دهد. سپس یک رشته کاراکتری شامل عبارتی ریاضی از متفیرهای ۱6 و ۷ را از کاربر بگیرد و نتیجه آنرا بر اساس مقادیر متغیرهای ورودی تعیین کند. تکلیف ۵-۲ برنام‌ای بنویسید که یک رشته کاراکتری را از کربر بگیرد و با تغيير كد اسکی آن» آنرا بصورت رمز در آورده نمایش دهد. تکلیف ۵-۳: برنامه‌ای بنویسید که نتایج تمرین ۵-۲ را از حالت رمز خارج کرده و نمایش دهد. عباس طوییانشگاه صنعتی اصتهان

فصل پنجم متن :کار با رشته‌های کاراکتری کالس آموزشی عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -5-1رشته‌هاي کاراکتري براي تعريف رشته‌هاي کاراکتري در متلب از عالمت ‘ ‘ استفاده مي‌شود: مثال: ;’>> s=‘This is a character string )>> size(s =ans 1 26 نکته :در متلب رشته‌هاي کاراکتري نيز بعنوان ماتريس شناخته مي‌شوند بطوريکه هر کاراکتر يک عنصر ماتريس محسوب مي‌شود. عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -5-2نمايش کد اسکي کاراکتره?ا :تابع abs براي نمايش کد اسکي يک رشته مي‌توان از تابع absمتلب استفاده کرد: ’>> s= ‘Hello )>> u=abs(s =u 72 101 108 108 111 عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -5-3تبديل کد اسکي به کاراکتر براي تبديل کد اسکي به کاراکتر از تابع charاستفاده کنيد. ’>> s= ‘Hello )>> u=abs(s =u 72 101 108 108 111 )>> sNew=char(u =sNew ‏Hello عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -5-4رفتار ماتريسي رشته‌ها با رشته‌هاي کاراکتري متلب دقيقا مي‌توان مانند ماتريسهاي عددي رفتار کرد .مثال مي‌توان عمليات رياضي را بر آنها اعمال? کرد. در اينصورت متلب کد اسکي رشته را مورد استفاده قرار مي‌دهد. مثال :نمايش رشته از آخر به اول ’>> s= ‘Hello ;)>> sInv=s( end : -1 : 1 )>>disp(sInv ‏olleH عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -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 عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -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 عباس طبیبی-دانشگاه صنعتی اصفهان فصل پنجم :متن -5-7گرفتن رشته در حين اجراي برنامه براي گرفتن يک رشته از ورودي با استفاده از تابع inputدر حين اجراي برنامه دو روش را مي‌توان بکار برد: روش اول روش معمول استفاده از اين تابع است .يعني تابع مذکور را تنها با يک آرگومان ورودي بکار مي‌بريم .در اينصورت در حين اجرا ،بايد رشته را در داخل ‘ ‘ قرار داد. روش بهتر استفاده از تابع inputبا يک آرگومان دوم ‘ ’sمي‌باشد که در اينصورت متلب ورودي کاربر را بعنوان رشته تلقي مي‌کند حتي اگر يک عدد يا نام يک متغير باشد. عباس طبیبی-دانشگاه صنعتی اصفهان متن:فصل پنجم -ادامه-گرفتن? رشته در حين اجراي برنامه-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 دانشگاه صنعتی اصفهان-عباس طبیبی فصل پنجم :متن -5-8ساير توابع کار با رشته‌ها ‌گ??ردا?ند: در?صور?ت?يکه دو ر?ش?ته ي??کسانب??اش?ند 1و در?غ?ير ا?ي?نصور?ت 0ب??از م?ي )strcmp(s1,s2 ‌ک??ند : ت??مايح?رو?في??کر?ش?ته را ب??ه ح?رو?فب??زر?گت??بدي?لم?ي ‌ک??ند: ت??مام?يح?رو?في??کر?ش?ته را ب??ه ح?رو?فک??وچ?کت??بدي?لم?ي ي ت??بدي?لع?دد ب??ه ر?ش?ته ع?دد? : ت??بدي?لر?ش?ته ع?دد?يب??ه ع?دد: :ت??بدیلم?اتریسیاز ا?عداد ب??ه ر?ش?ته ا?جرا?یف??رمان?یاز م?تلبک??ه ب??صور?تر?ش?ته وارد ش??ده? ب??اشد: ‏upper ‏lower ‏num2str ‏str2num ‏mat2str ‏eval نکته :تفاوت تابع ‌num2strبا تابع ‌mat2strدر این است که در تابع دوم رشته بازگردانده شده قابل اجرا توسط تابع ‌evalاست. عباس طبیبی-دانشگاه صنعتی اصفهان متن:فصل پنجم ...ادامه- ساير توابع? کار با رشته‌ها-5-8 :مثال >> a=input(‘Enter <a> value= ‘); enter <a> value= 12 >> disp([‘You number is’, num2str(a) , ‘ . Thank you!’]); Your number is 12 . Thank you! دانشگاه صنعتی اصفهان-عباس طبیبی فصل پنجم :متن تکلیف :۵-۱برنامه‌ای بنویسید که دو ماتریس عددی را از کاربر بگیرد و در متغیرهای ‌xو ‌yقرار دهد .سپس یک رشته کاراکتری شامل عبارتی ریاضی از متغیرهای xو yرا از کاربر بگیرد و نتیجه آنرا بر اساس مقادیر متغیرهای ورودی تعیین کند. تکلیف :۵-۲برنامه‌ای بنویسید که یک رشته کاراکتری را از کاربر بگیرد و با تغییر کد اسکی آن ،آنرا بصورت رمز در آورده نمایش دهد. تکلیف :۵-۳برنامه‌ای بنویسید که نتایج تمرین ۵-۲را از حالت رمز خارج کرده و نمایش دهد. عباس طبیبی-دانشگاه صنعتی اصفهان

39,000 تومان