دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۸
  • اردیبهشت

جلسه ۲۰ : توابع درونی در فرترن

  • دسته‌بندی‌ها :
جلسه ۲۰ : توابع درونی در فرترن
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، در این جلسه از آموزش های دوره فرترن ، به کاربرد توابع درونی در فرترن می پردازیم. توابع درونی در فرترن برخی از توابع رایج و مهم هستند که به عنوان بخشی از زبان فرترن ارائه می شوند. ما قبلا در مورد برخی از این توابع در فصلهای آرایه ها، کاراکتر ها و رشته بحث کرده ایم.

      کاربرد توابع درونی در فرترن

      به طور کلی توابع درونی می توانند به صورت زیر دسته بندی شوند:

      توابع عددی
      توابع ریاضی
      توابع جستجوی عددی
      توابع دستکاری شناور
      توابع دستکاری بیت
      توابع کاراکتری
      توابع نوع
      توابع منطقی
      توابع آرایه.
      ما در مورد توابع آرایه در فصل آرایه ها در فرترن بحث کرده ایم. در بخش زیر شرح مختصری از همه این توابع از سایر دسته ها ارائه می شود که هر کدام کاربرد توابع درونی در فرترن را نشان می دهد.

      در ستون نام تابع

      A نشان دهنده هر نوع متغیر عددی است.
      R یک متغیر حقیقی یا عدد صحیح است.
      X و Y نشان دهنده متغیرهای حقیقی هستند.
      Z نشان دهنده متغیر مختلط است.
      W نماد حقیقی یا مختلط است.

      کاربرد توابع درونی در فرترن

       شماره

       تابع و توضیحات کاربرد توابع درونی در فرترن

       ۱
       (ABS (A

      این تابع مقدار مطلق A را می دهد.

      ۲
       (AIMAG (Z

      قسمت مجازی یک عدد مختلط Z را باز می گرداند.

      ۳
       ([AINT (A [, KIND

      این بخش تقسیم A را به سمت صفر بر می گرداند و یک عدد حقیقی را می دهد.

      ۴
       ([ANINT (A [, KIND

      یک مقدار واقعی، نزدیک ترین عدد صحیح یا عدد کامل را نشان می دهد.

      ۵
        ([CEILING (A [, KIND

      حداقل عدد صحیح بزرگتر یا برابر عدد A را به دست می دهد.

      ۶
       ([CMPLX (X [, Y, KIND

      متغیرهای حقیقی X و Y را به یک عدد مختلط X + iY تبدیل می کند؛ اگر Y وجود نداشته باشد، ۰ استفاده می شود.

      ۷
       (CONJG (Z

      ترکیب پیچیده از هر عدد مختلط Z را باز می گرداند.

      ۸
       (DBLE (A

      A را به یک عدد حقیقی با دقت اعشاری تبدیل می کند.

      ۹
       (DIM (X, Y

      تفاوت فاصله مثبت X و Y را نشان می دهد.

      ۱۰
       (DPROD (X, Y

      حاصلضرب  X و Y را باز می گرداند.

      ۱۱
       ([FLOOR (A [, KIND

      بزرگترین عدد صحیح را که کمتر یا برابر عدد A است فراهم می کند.

      ۱۲
       ([INT (A [, KIND

      یک عدد (واقعی یا عدد صحیح) را به عدد صحیح تبدیل می کند، قسمت واقعی را به صفر تقسیم می کند.

      ۱۳
       ([… ,MAX (A1, A2 [, A3

      مقدار حداکثر از آرگومان ها را باز می گرداند، همه آنها از همان نوع هستند.

      ۱۴
       ([… ,MIN (A1, A2 [, A3

      مقدار حداقل از آرگومان ها را باز می گرداند، همه آنها از همان نوع هستند.

      ۱۵
      (MOD (A, P

      باقیمانده A را در تقسیم با P بازمی گرداند

      ۱۶
       (MODULO (A, P

      ماژول A را به این صورت بر می گرداند. (P: (A-FLOOR(A/P)*P

      ۱۷
       ([NINT (A [, KIND

      مقدار نزدیک ترین عدد صحیح  A را می دهد.

      ۱۸
       ([REAL (A [, KIND

      عدد را به نوع حقیقی تبدیل می کند.

      ۱۹
       (SIGN (A, B

      مقدار مطلق A را با علامت P ضرب می شود. اساسا علامت B را به A منتقل می کند.

      مثال کاربرد توابع درونی در فرترن

      مثال : 

      بعد از کامپایل و اجرای کد بالا خروجی زیر تولید می شود :

      مثال : 

      توابع ریاضی در فرترن

       شماره

       تابع و توضیحات

       ۱ (ACOS (X

      کسینوس معکوس را در محدوده (۰، π)، در رادیان باز می گرداند.

      ۲ (ASIN (X

      سینوسی معکوس را در محدوده (-π / ۲، π / ۲)، در رادیان باز می گرداند.

      ۳ (ATAN (X

      این تانژانت معکوس را در محدوده (-π / ۲، π / ۲) در رادیان ها باز می گرداند.

      ۴( ATAN2 (Y, X

      معادله معکوس را در محدوده (-π، π)، در رادیان ها باز می گرداند.

      ۵ (COS (X

      مقدار کسینوس را در رادیان برمی گرداند.

      ۶ (COSH (X

      کسینوس هیپربولیک در رادیان ها را باز می گرداند.

      ۷( EXP (X

      مقدار نمایی X را باز می گرداند.

      ۸(LOG (X

      مقدار ارزش لگاریتمی طبیعی X را برمی گرداند.

      ۹ (LOG10 (X

      مقدار logarithmic (پایه ۱۰) X را برمی گرداند.

      ۱۰(SIN (X

      مقدار سینوس X را برمی گرداند.

      ۱۱ (SINH (X

      مقدار سینوس هیپربولیک را باز می گرداند.

      ۱۲ (SQRT (Xریشه مربع X را بازمی گرداند.
      ۱۳ (TAN (X

      مقدار تانژانت را باز می گرداند.

      ۱۴ (TANH (X

      مقدار تانژانت هیپربولیک را باز می گرداند.

      مثال
      برنامه زیر محاسبه موقعیت افقی و عمودی x و y به ترتیب از یک پرتاب پس از  زمان، t –

      از جایی که، x = u t cos a و y = u t sin a – g t2 / 2

      مثال : 

      هنگامی که کد بالا را اجرا و کامپایل کنید خروجی زیرا مشاهده می کنید :

      مثال : 

      توابع جستجوی عددی

      این توابع با یک مدل خاص از عدد صحیح و ریاضی کار می کنند. توابع خواص اعداد همان نوع متغیر X را می دهند که می توانند واقعی باشند و در بعضی موارد عدد صحیح باشند.

      شماره

      تابع و توضیحات

      ۱(DIGITS (X

      مقدار تعداد رقم قابل توجهی از مدل را بر می گرداند.

      ۲(EPSILON (X

      این عدد را که نسبت به یک عدد تقریبا ناچیز است، باز می گرداند.

      طوری که (REAL (1.0، KIND (X)) + EPSILON (X برابر با ((REAL (1.0، KIND (X نیست.

      ۳(HUGE (X

      بزرگترین عدد در مدل را بر می گرداند.

      ۴(MAXEXPONENT (X

      حداکثر توان مدل را بر می گرداند.

      ۵(MINEXPONENT (X

      حداقل توان مدل را بر می گرداند.

      ۶(PRECISION (X

      دقت اعشاری را بر می گرداند.

      ۷(PRECISION (X

      مدل پایه را بر می گرداند.

      توابع دستکاری شناور

      شماره

      تابع و توضیحات

      ۱(EXPONENT (X

      این قسمت توان یک شماره مدل را باز می گرداند.

      ۲(FRACTION (X

      بخش کوچکی از یک عدد را باز می گرداند.

      ۳(NEAREST (X, S

      تعداد نزدیکترین پردازشگر متفاوت را در جهت مشخصی باز می گرداند.

      ۴RRSPACING (X)

      این مقدار متقاطع بین فاصله نسبی اعداد مدل را در نزدیکی عدد داده شده باز می گرداند.

      ۵(SCALE (X، I

      یک عدد حقیقی را با پایه توان عدد صحیح ضرب می کند.

      ۶SET_EXPONENT (X، I)

      قسمت نوانی یک عدد را باز می گرداند.

      ۷(SPACING (X

      فاصله مطلق اعداد مدل را در نزدیکی اعداد داده شده از می گرداند.

      توابع دستکاری بیت در فرترن

      شماره

      تابع و توضیحات

      ۱(BIT_SIZE (I
      این تعداد بیت مدل را باز می گرداند.
      ۲ (BTEST (I، POS

      تست کردن بیت را انجام می دهد.

      ۳ (IAND (I، J

      AND منطقی

      ۴ (IBCLR (I، POS

      پاک کردن بیت

      ۵ (IBITS (I، POS، LEN

      استخراج بیت

      ۶ (IBSET (I، POS

      تنظیم کننده بیت

      ۷ (IEOR (I، J

      ORانحصاری

      ۸ (IOR (I، J

      ORمنطقی

      ۹(ISHFT (I، SHIFT

      شیفت منطقی

      ۱۰([ISHFTC (I، SHIFT [، SIZE

      شیفت دایره ای

      ۱۱ (NOT (I

      نات منطقی

      توابع کاراکتری در فرترن

       شماره

       تابع و توضیحات

       ۱(ACHAR (I

      کاراکتر I را در توالی جمع آوری ASCII باز می گرداند.

      ۲(ADJUSTL (STRING

      رشته را با حذف هر نوع جعبه پیشرو و قرار دادن مخازن خالی تنظیم می کند.

      ۳(ADJUSTR (STRING

      رشته را درست با حذف سطوح ضخیم و قرار دادن سطوح پیشرو تنظیم می کند.

      ۴ ([CHAR (I [, KIND

      کاراکتر I را در دنباله مرتب سازی خاصی از ماشین باز می گرداند.

      ۵(IACHAR (C

      موقعیت کاراکتر را در توالی جمع آوری ASCII باز می گرداند.

      ۶(ICHAR (C

      موقعیت کاراکتر را در دستگاه (پردازشگر) مشخص می کند تا دنباله ای را مرتب کند.

      ۷([INDEX (STRING، SUBSTRING [، BACK

      این مقدار سمت چپ را به سمت راست انتقال می دهد. (اگر BACK برابر TRUE باشد، موقعیت شروع از SUBSTRING به STRING است.

      ۸(LEN (STRING

      طول رشته را باز می گرداند.

      ۹(LEN_TRIM (STRING

      طول رشته را بدون در نظر گرفتن فاصله های خالی بر می گرداند.

      ۱۰(LGE (STRING_A، STRING_B

      رشته ای که بزرگتر یا برابر هست را باز می گرداند.

      ۱۱

      (LGT (STRING_A، STRING_B

      رشته ای که از نظر تعداد لغات لزوما بیشتر باشد را باز می گرداند.

      ۱۲ (LLE (STRING_A, STRING_B

      رشته ای که کوچکتر یا برابر هست را باز می گرداند.

      ۱۳ (LLT (STRING_A, STRING_B

      رشته ای که از نظر تعداد لغات لزوما کمتر باشد را باز می گرداند.

      ۱۴(REPEAT (STRING، NCOPIES

      پیوند مجدد رشته

      ۱۵([SCAN (STRING، SET [، BACK

      فهرست را از سمت چپ مرتب می کند(راست ترین، اگر BACKبرابرTRUEباشد) کاراکترSTRING به SET تعلق دارد.

      ۱۶(TRIM (STRING

      کاراکترهای خالی را حذف می کند.

      ۱۷([VERIFY (STRING, SET [, BACK

      مجموعه ای از کاراکترها در یک رشته را بررسی می کند

      توابع نوع در فرترن

      شماره 

      تابع و توضیحات

      ۱ (KIND (X

      نوع پارامتر را باز می گرداند.

      ۲(SELECTED_INT_KIND (R

      نوع پارامتر را برای محدوده ی مشخص شده ارائه می دهد.

      ۳([SELECTED_REAL_KIND ([P، R

      مقدار واقعی نوع پارامتر را، با توجه به دقت و محدوده می دهد.

      تابع منطقی در فرترن

      شماره

      توضیحات و تابع

      ۱ 

      اشیاء نوع منطقی را با انواع مختلف پارامترها تبدیل می کند.

      کلام آخر

      آموزش کاربرد توابع درونی در فرترن با معرفی توابع پرکاربرد در این زبان به پایان رسید با ما همراه باشید تا در جلسه بعد به مبحث دقت عددی در فرترن بپردازیم.

      QR:  جلسه ۲۰ : توابع درونی در فرترن
      به اشتراک بگذارید