میخوای وارد بازار کار بشی و محصولات خودت رو بفرشی همین الان ثبت نام کن
0

توابع ریاضی PHP

در آموزش توابع ریاضی در php قصد داریم  توابعی مربوط به عملیات هایی که بر روی اعداد می توان انجام داد را عنوان کنیم.

سینتکس توابع ریاضی در php که بیشتر مربوط به اعداد است بر خلاف توابع کار با رشته ها در php ، بسیار سینتکس ساده ای دارند.

با استفاده از توابعی که معرفی می شود به راحتی می توانید عملیات های ریاضی در PHP را انجام بدید


نصب و راه اندازی

توابع ریاضی PHP بخشی از هسته PHP هستند. برای استفاده از این توابع نیازی به نصب نیست.


توابع ریاضی PHP

 

توابعتوضیحات
abs()مقدار مطلق (مثبت) یک عدد را برمی گرداند
acos()آرک کسینوس یک عدد را برمیگرداند
acosh()کسینوس هذلولی معکوس یک عدد را برمی گرداند
asin()آرک سینوس یک عدد را برمیگرداند
asinh()سینوس هذلولی معکوس یک عدد را برمی گرداند
atan()آرک تانژانت یک عدد را برمیگرداند
atan2()آرک تانژانت دو متغیر x و y را برمیگرداند
atanh()مماس هذلولی معکوس یک عدد را برمی گرداند
base_convert()یک عدد را از یک پایه عددی به مبنای دیگر تبدیل می کند
bindec()یک عدد باینری را به یک عدد اعشاری تبدیل می کند
ceil()عددی را به نزدیکترین عدد صحیح جمع می کند
cos()کسینوس یک عدد را برمی گرداند
cosh()کسینوس هذلولی یک عدد را برمی گرداند
decbin()یک عدد اعشاری را به یک عدد باینری تبدیل می کند
dechex()یک عدد اعشاری را به یک عدد هگزادسیمال تبدیل می کند
decoct()یک عدد اعشاری را به عدد هشت عددی تبدیل می کند
deg2rad()مقدار درجه را به مقدار شعاع تبدیل می کند
exp()نمایانگر e را محاسبه می کند
expm1()exp(x) - 1 را برمی گرداند
floor()یک عدد را به نزدیکترین عدد صحیح جمع می کند
fmod()بازمانده x / y را برمی گرداند
getrandmax()بیشترین مقدار ممکن را که توسط rand برگردانده شده برمی گرداند ()
hexdec()یک عدد هگزادسیمال را به یک عدد اعشاری تبدیل می کند
hypot()هیپوتنوز مثلث زاویه راست را محاسبه می کند
intdiv()تقسیم عدد صحیح را انجام می دهد
is_finite()محدود بودن یا نبودن مقدار را بررسی می کند
is_infinite()بی نهایت بودن یا نبودن مقدار را بررسی می کند
is_nan()بررسی می کند که آیا یک مقدار "یک عدد نیست" است
lcg_value()یک عدد تصادفی شبه را در محدوده ای بین 0 و 1 برمی گرداند
log()لگاریتم طبیعی یک عدد را برمی گرداند
log10()لگاریتم پایه -10 یک عدد را برمی گرداند
log1p()log(1+number) را برمی گرداند
max()بالاترین مقدار یک آرایه یا بالاترین مقدار چندین مقدار مشخص را برمی گرداند
min()کمترین مقدار یک آرایه یا کمترین مقدار چندین مقدار مشخص شده را برمی گرداند
mt_getrandmax()بیشترین مقدار ممکن را که توسط mt_rand برگردانده است برمی گرداند ()
mt_rand()با استفاده از الگوریتم Mersenne Twister یک عدد صحیح تصادفی ایجاد می کند
mt_srand()مولد اعداد تصادفی مرسن توئیستر را بذر می زند
octdec()یک عدد هشتم را به یک عدد اعشاری تبدیل می کند
pi()مقدار PI را برمی گرداند
pow()x را به توان y برمی گرداند
rad2deg()مقدار شعاع را به مقدار درجه تبدیل می کند
rand()یک عدد صحیح تصادفی ایجاد می کند
round()عدد شناور را جمع می کند
sin()سینوس یک عدد را برمی گرداند
sinh()سینوس هذلولی یک عدد را برمی گرداند
sqrt()ریشه مربع یک عدد را برمی گرداند
srand()مولد اعداد تصادفی را بذر می زند
tan()مماس یک عدد را برمی گرداند
tanh()مماس هذلولی یک عدد را برمی گرداند

 


 

تابع‌های مثلثاتی در PHP

در زبان برنامه‌نویسی PHP با استفاده از تابع‌های (sin($angle)، cos($angle و (tan($angle می‌توان به ترتیب سینوس، کسینوس و تانژانت زوایای مختلف را که بر اساس رادیان بیان شده‌اند پیدا کرد. همه این تابع‌ها مقادیر float بازمی‌گردانند و مقدار دریافتی آن‌ها باید زاویه بر مبنای رادیان باشد.

این بدان معنی است که وقتی مقدار (tan(45 را محاسبه کنیم، مقدار ۱ به دست می‌آید، زیرا در واقع ما مشغول محاسبه مقدار تانژانت ۴۵ رادیان هستیم که حدود ۲٫۵۷۸ درجه خواهد بود. خوشبختانه PHP دو تابع بسیار مفید برای تبدیل رادیان به درجه و برعکس دارد. این تابع‌ها به ترتیب ()rad2deg و ()deg2rad هستند. بنابراین اگر بخواهید عملاً مقدار تانژانت ۴۵ درجه را محاسبه کنید، می‌توانید کد آن را به صورت ((tan(deg2rad(45 بنویسید.

لازم به ذکر است که هیچ تابع مستقیم PHP برای محاسبه مقدار ()cosec()، sec یا ()cot وجود ندارد. با این وجود، این مقادیر مرتبط با مقادیر ()sin()، cos و ()tan هستند و از این رو می‌توانید آن‌ها را همچنان به طور غیر مستقیم محاسبه کنید.

همچنین می‌توانید حالت عکس را استفاده کنید و زاویه‌ای که یک مقدار مثلثاتی خاص دارد را بیابید. این تابع‌ها به نام ()asin()، acos و ()atan خوانده می‌شوند. نکته‌ای که باید به خاطر داشته باشید این است که مقادیر سینوس و کسینوس هرگز برای هیچ زاویه‌ای نمی‌توانند از محدوده ۱- تا ۱ فراتر بروند. این بدان معنی است که مقادیر ورودی برای تابع‌های ()asin و ()acos صرفاً در محدوده ۱- تا ۱ معتبر خواهند بود و مقداری خارج از این بازه مقدار تعریف نشده بازگشت می‌دهد.

مثلثات کاربردهای زیادی مانند تعیین خط سیر یک پرتابه یا ارتفاع و مسافت شیءهای مختلف دارد و از این رو دسترسی به این تابع‌ها در صورتی که کدی برای شبیه‌سازی برخی موقعیت‌های فیزیکی می‌نویسید کاملاً مفید خواهد بود.

این تابع‌ها ضمناً در مواردی که می‌خواهید عناصر مختلف را با استفاده از مقادیر شعاعی و زاویه‌ای ترسیم کنید کاملاً مفید خواهند بود. فرض کنید می‌خواهید یک الگو از دایره‌های مختلف پیرامون یک دایره بزرگ‌تر در مسافتی یکنواخت رسم کنید. می‌دانیم که ترسیم هر شکل نیازمند ارسال مختصات آن به صورت x و y است؛ اما ترسیم الگوهای دایره‌ای با استفاده از مختصات قطبی ساده‌تر است.

در این حالت با بهره‌گیری از تابع‌های مثلثاتی می‌توانید شکل‌های موردنظر را با استفاده از ()sin و ()cos برای تبدیل به مختصات دکارتی رسم کنید. در ادامه مثالی برای این حالت ارائه شده است:

<?php
$image = imagecreatetruecolor(800, 600);
$bg = imagecolorallocate($image, 255, 255, 255);
imagefill($image, , , $bg);
$radius = 80;
for($i = ; $i < 12; $i++) {
    $col_ellipse = imagecolorallocate($image, rand(, 200), rand(, 200), rand(, 200));
    imagefilledellipse($image, 175 + 125*cos(deg2rad($i*30)), 175 + 125*sin(deg2rad($i*30)), 3*$radius/4, 3*$radius/4, $col_ellipse);
    imageellipse($image, 175 + 125*cos(deg2rad($i*30)), 175 + 125*sin(deg2rad($i*30)), 3.5*$radius/4, 3.5*$radius/4, $col_ellipse);
    $col_ellipse = imagecolorallocate($image, rand(, 200), rand(, 200), rand(, 200));
    imagefilledellipse($image, 575 + 150*cos(deg2rad($i*30)), 375 + 150*sin(deg2rad($i*30)), 3*$radius/4, 3*$radius/4, $col_ellipse);
    imageellipse($image, 575 + 150*cos(deg2rad($i*30)), 375 + 150*sin(deg2rad($i*30)), 3.5*$radius/4, 3.5*$radius/4, $col_ellipse);
}
$col_ellipse = imagecolorallocate($image, 255, 255, 255);
imagefilledellipse($image, 175, 175, 275, 275, $col_ellipse);
?>

 

تابع‌های مثلثاتی در PHP

 

سخن پایانی

PHP دارای تابع‌های داخلی زیادی است که می‌توانند نیازهای محاسباتی روزمره ما را رفع کنند. می‌توان از این تابع‌ها برای انجام کارهای پیچیده‌تری مانند یافتن «بزرگ‌ترین مقسوم‌علیه مشترک»، «کوچک‌ترین مضرب مشترک» و فاکتوریل استفاده کرد.

چند چیز وجود دارند که باید هنگام استفاده از این تابع‌ها به خاطر داشته باشید. برای مثال، مقدار بازگشتی از تابع‌هایی مانند ()floor و ()ceil یک عدد صحیح است؛ اما همچنان نوع داده آن float است.

به طور مشابه، همه تابع‌های مثلثاتی انتظار دارند که زاویه‌هایی که ارائه می‌کنید در مقیاس رادیان باشند. در صورتی که زاویه را با مقیاس درجه به آن‌ها بدهید، ممکن است نتایجی برخلاف انتظار از آن‌ها بگیرید. بنابراین برای اطمینان بیشتر، مقدار بازگشتی و آرگومان‌های مورد انتظار این تابع را در مستندات PHP (+) بررسی کنید.

 

 


 

امیدواریم آموزش توابع ریاضی PHP نیز برای شما مفید واقع شده باشد .برای مطالعه پست‌ها بیشتر ، ما را در مدرسه کدنویسی تلگرام  و یا در تی جوان اینستاگرام دنبال کنید.

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

 

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

×

سلام کاربر عزیز

هر سوالی دارید در این بخش هستیم تا شما رو راهنمائی کنیم

روی لوگومون کلیک کنید

× چطور میتونم کمکتون کنم؟