kbkjlj/m/lkiubljj'pl;
hmjngj jxhngh
مطالب امروز مثال : ورودی آرايه برای پروسيجر تعريف تابع کار با توابع تفاوت تابع و روال چند مثال تحليل يک برنامه
مشتق يک چند جمله ای (که ضرايب آن داده شده است.) Type T = Array [ 0 .. 100 ] of Real; Procedure diff( var z : T ; n : byte); Var i : integer; Begin For i := 0 To n-1 do z[i] := z[i+1]*(i+1); End; Var a : T; i , n :Byte; Readln (n); For i := 0 To n Do Readln (a[i]); diff (a , n); For i := 0 To n-1 Do Writeln (a[i]:6:0); Readln; End.
زيربرنامه ای که خروجی دارد. تابع زيربرنامه ای که خروجی دارد.
تعريف يک تابع Function نام تابع ( متغير : نوع ; … ) : نوع خروجی ; Var تعريف متغيرها ; Begin چند دستور ; End;
تعريف يک تابع Function نام تابع ( متغير : نوع ; … ) : نوع خروجی ; Var تعريف متغيرها ; متغير کمکی : نوع خروجی ; Begin . . . انجام محاسبات با متغير کمکی ; نام تابع := متغير کمکی ; End;
مثال تعريف يک تابع Function Add ( a , b : Real ) : Real; Var s : Real ; Begin s := a + b; Add := s; End;
استفاده از تابع استفاده از يک تابع يا اصطلاحا صدا زدن آن، با ذکر نام آن تابع و پارامترهای ورودی آن انجام میگيرد. Var Result : Real; Begin Result := Add ( 3 , 5 ); Writeln (Result); End.
محاسبه توان 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 ; Power := p; End; a : Real ; b : Integer; Readln (a , b); Writeln ( Power (a , b) ); End.
نمايش عدد زوج به صورت جمع دو عدد اول Function Prime ( n : Word ) : Boolean; Var b : Boolean; I : Integer; Begin b := True; For i := 1 To Trunc ( sqrt (n) ) Do If n mod I = 0 Then b := False; Prime := b; End;
نمايش عدد زوج به صورت جمع دو عدد اول Var I , n : Word Begin Readln (n); For I := 1 To n Do If ( Prime ( I ) ) and ( Prime ( n-I ) ) Then Write ( I , n-I ); 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);
مبحث جلسه آينده رشته ها String