تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86

Slides:



Advertisements
Similar presentations
Awe sim.
Advertisements

زبان برنامه نویسی پرولوگ
Stranded Costs مقدمه 1 - آشنايی با پديده های غيرخطی ( ياد آوری و تکميل ) 2 - مبانی رياضی ( مهم )
انواع اصلی عامل ها.
LINEAR CONTROL SYSTEMS Ali Karimpour Assistant Professor Ferdowsi University of Mashhad.
Computer Programming برنامه سازی کامپيوتر1 طراحی الگوريتم ها Algorithm Design.
Definition. قانون بیز P(b|a) = P(a|b)P(b)/P(a) P(b|a) = P(a|b)P(b)/P(a) این قانون برای استنتاج آماری استفاده می شود. این قانون برای استنتاج آماری استفاده.
دستور های منطقی، عباسپور1 دستور های منطقی مقايسه ای LOGICAL COMPARISON EXPRESION.
Decision Tree.
مثال های کاربردی (1) محاسبه سطوح دايره ای شکل –آبياری بارانی –سم پاشها تعريف مسئله: تهيه برنامه ای که بر اساس يک شعاع مفروض ورودی سطح دايره متناظر را محاسبه.
1 برنامه سازی با C# برنامه منو Instructor : Saeed Shiry.
مراحل مختلف اجرای يک برنامه
فایل پردازی در C File based Programming in C. انواع فایل متنی –سرعت بالا –حجم کمتر –امکان دسترسی تصادفی –حفظ امنیت داده ها دودویی (باینری) –امکان باز.
PHP Hypertext per processor کار می کند؟ PHP چگونه
Microsoft Office Objectives Introducing Version history Look at the Excel window Data types Formulas Ribbon Functions Case study.
1 Network Address Translation (NAT). 2 Private Network شبکه خصوصی شبکه ای است که بطور مستقیم به اینترنت متصل نیست در یک شبکه خصوصی آدرس های IP به دلخواه.
Lesson four Grade three
Database Laboratory: Session #4 Akram Shokri. DB-Lab 2 Lab Activity You must already created all tables You have to have inserted proper data in tables.
به نام خدا برنامه سازی سمت سرور (php)
برنامه نویسی کامپیوتر بخش ششم مدرس: دکتر خالدیان.
1 بنام خدا زبان برنامه نویسی C (21814( Lecture 8 Chapters 8 & 9.
موضوع: دبير مربوطه: آموزشگاه : اجرا : عبارتهای جبری خانم مقصودی
مظفر بگ محمدی دانشگاه ایلام Generics. کدهای عمومی 2 یکی از اهداف OOP ایجاد قابلیت نوشتن برنامه های عمومی با قابلیت استفاده ی مجدد است. کدهای چندریخت تا.
Data Types Modifiers Base data type Size Sign signed int 2 B unsigned float 4 B short double 8 B long char 1 B.
دانشگاه صنعت آب و برق 1 زیربرنامه ‌ ها یا برنامه ‌ های فرعی موسوی ندوشنی ویراست بهار 1389.
پیاده سازی کنترلر PC/104. Contents PC/104 پیاده سازی کنترلر HILتست 1.
LINEAR CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad.
به نام خدا.
[c.
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
( Project Operation Management )
تمرین هفتم بسم الله الرحمن الرحیم درس یادگیری ماشین محمدعلی کیوان راد
هیدروگراف(Hydrograph) تهیه : دکتر محمد مهدی احمدی
بنام خدا زبان برنامه نویسی C (21814( Lecture 2 Chapter 3
دانشکده مهندسی کامپیوتر
بنام خدا زبان برنامه نویسی C (21814( Lecture 12 Selected Topics
اسلایدهای فصل سوم کتاب سیلبرشاتز دانشکده مهندسی کامپیوتر دانشگاه شریف
Address: Times New Roman, size 34
آزمایشگاه پایگاه داده ها قیود در جداول یک پایگاه داده در SQL Server
واحد های مختلف برنامه عباسپور
چگونه بفهمیم آیا ژورنالی ISI است؟ ایمپکت فاکتور دارد یا خیر؟
آموزش مقدمات MATLAB سیگنال ها و سیستم ها دانشگاه صنعتی شریف پائیز 86
مظفر بگ محمدی دانشگاه ایلام
مدیریت مالی و اقتصاد مدیریت موضوع : نقطه سر به سر زمستان 93
فصل دوم جبر بول.
به نام حق مبحث: ارث بری Inheritance.
Microsoft Visual Basic
نمايش اعداد در کامپيوتر چهار عمل اصلي
مدارهای منطقی فصل سوم - خصوصیات توابع سويیچی
ساختمان داده‌ها پیمایش درخت دودویی
فصل 10 طراحی انباره فراداده ارائه درس هوش تجاری
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
kbkjlj/m/lkiubljj'pl;
دینامیک سیستمهای قدرت مدرس: دکتر مهدی بانژاد
بنام خدا زبان برنامه نویسی C (21814( Lecture 7 Chapter 7
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
جستجوی منابع الکترونیک
فصل ششم مدارهای ترتیبی.
مثال : فلوچارتي رسم كنيد كه دو عدد از ورودي دريافت كرده بزرگترين عدد
دکتر مظفر بگ محمدی دانشگاه ایلام
مظفر بگ محمدی دانشگاه ایلام
توزیع میانگین نمونه سعید موسوی.
به نام یکتای دانا فصل اول: متدها و قواعد.
عملیات با رشته‌ها موسوی ندوشنی ویراست 1389 دانشگاه صنعت آب و برق.
برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 7
kbkjlj/m/lkiubljj'pl;
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
ساختمان داده ها گرافها.
Presentation transcript:

تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86 تابع و رویه 1 تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86

مروری بر مطالب تاکنون یک برنامه به دستورات پاسکال شکسته می شود. طراحی برنامه دشوار است زیرا کوچکترین واحد دستوری، دستورات پاسکال است. اگر برنامه را بتوانیم به ساختاری اجرایی با هدف مشخص بشکنیم، طراحی و پیاده سازی راحت تر خواهد شد. طراحی مدولار ، طراحی از بالا به پایین است.

مثال : نمايش عدد زوج به صورت جمع دو عدد اول Var I , n : Word found : boolean; Begin Readln (n); found := false; for I := 2 to n do If ( Prime ( I ) ) and ( Prime ( n-I ) ) then begin Write(I, n-I); found := true; break; end; if not found then write (‘Not found’); End.

مثال : نمايش عدد… کافی است prime را یکبار بنویسیم و چندین بار استفاده کنیم. مجموعه ای از دستورات را نام prime فراخوانی می کنیم. ورودی (پارامتر) را به صورت آرگمان دریافت می کند. کد برنامه ساده تر و قابل فهم تر می شود

تعریف تابع Function نام تابع ( متغير : نوع ; … ) : نوع خروجی ; Var تعريف متغيرها ; متغير کمکی : نوع خروجی ; Begin . . . انجام محاسبات با متغير کمکی ; نام تابع := متغير کمکی ; End;

رویه رویه خروجی ندارد! Procedure نام رویه ( متغير : نوع ; … ) ; Var تعريف متغيرها ; Begin چند دستور ; End;

فرق تابع و رویه تابع دارای خروجی است. حال آنکه رویه خروجی ندارد. عملياتهای محاسباتی، انتساب (مقداردهی)، مقايسه ای و چاپ در خروجی، فقط برای توابع معتبرند و برای رویه معنا ندارند. به عنوان مثال اگر F تابعی با ورودی Real و خروجی Integer و a هم متغيری Integer باشد، عملياتهای زير معتبرند : a := F (2.5) + 3; Write ( F (1.7) ); If F ( 1.3 ) > F ( 7.4 ) Then a := F (5.4);

پیاده سازی تابع prime Function Prime ( m : Word ) : Boolean; Var b : Boolean; I : Integer; Begin b := True; for i := 2 to Trunc ( sqrt (m) ) Do If n mod I = 0 Then b := false; Prime := b; End; متغیر داخلی نوع ورودی نوع خروجی

نگاشت متغیرها هنگامی که نام آرگمان m باشد: l n l=1 l=2 l=3 found l=1 n=10 found =false m=1 l=2 n=10 found =false m=2 m=8 l=3 n=10 found =false m=3 m-=7 فضای حافظه Heap

انواع متغیرها متغیر جهانی (global) متغیر محلی (local) متغیرهایی هستند که در برنامه اصلی تعریف می شوند. در سرتاسر برنامه از جمله بدنه تابع ها و رویه ها قابل دسترسی هستند. متغیر محلی (local) متغیرهایی هستند که در رویه ها و تابع ها تعریف می شوند و فقط در بدنة آن تابع یا رویه قابل استفاده هستند. در صورت وجود هم نامی بین متغیرهای محلی و جهانی ، تابع یا رویه به متغیرهای محلی رجوع می کند.

انواع متغیرها (ادامه) var x : integer; y : boolean; function test : boolean; var x,y:Integer; begin x := 100; if y than writeln(x); test := true; end; x:= 200; test; writeln(x); end.

انواع متغیرها (ادامه) آرگمان متغیر محلی محسوب می شود: هنگامی که نام آرگمان n باشد: l n found l=1 n=10 found =false n=1 l=2 n=10 found =false n=2 n=8 l=3 n=10 found =false n=3 n-=7 فضای حافظه Heap

مثال : محاسبه توان Function Power ( x : Real ; n : Integer ) : Real; Var p : Real; I : Integer; Begin p := 1; For i := 1 To abs (n) Do p := p * x ; if n <0 then p := 1/p; Power := p; End; a : Real ; b : Integer; Readln (a , b); Writeln ( Power (a , b) ); End.

مثال :کرم Begin EOG := true ; LEVEL:=1 ; While EOG do INIT_Wall(Level); INIT_foods ; INIT_putworm; If Game then LEVEL:=LEVEL+1 else EOG := false; End ;

مثال :کرم (ادامه) Procedure INIT_Wall(l:Integer); x,y : integer; مثال :کرم (ادامه) Procedure INIT_Wall(l:Integer); x,y : integer; dir : byte; … Begin x := random(79)+1; y := random(24)+1; for i:= 1 to l*10 do begin d := random(3); case d of 0 : y:=y-1; …. if y=0 then y:=25 else if y:=26 then y:=1 ; ground[x][y]:=true ; end; End; To

مثال :کرم (ادامه) چناچه ملاحظه می شود برنامه به صورت مدولار از بالا به پایین طراحی می شود: Program INIT_Wall INIT_foods INIT_foods Game

مثال :کرم (ادامه) Function Game:boolean; Var … Begin gameover:= false; مثال :کرم (ادامه) Function Game:boolean; Var … Begin gameover:= false; while not gameover do begin Move(get_dir); if food[wx,wy] >0 then grow(food[wx,wy]); else ... end; Game := gameover; End.