اعداد صحیح اعدادی کاملاند که به مجموعهی {..., -2, -1, 0, 1, 2, ...} تعلق دارند.
بیشینه و کمینهی مقدار یک عدد صحیح به سیستمی بستگی دارد که PHP در آن اجرا میشود.
معمولاً در بیشتر سیستمهای مدرن، عدد صحیح یک مقدار ۶۴ بیتی است، یعنی میتواند از -9_223_372_036_854_775_808 تا 9_223_372_036_854_775_807 را، با احتساب دو سر بازه، نمایش دهد.
<?php
$a = 1234;
$a = 1_234_567;
میتوانید مقادیر صحیح ثابت را به مبنایی جز ۱۰ و با استفاده از یک پیشوند مبنا بنویسید:
<?php
$a = 0123; // octal number (equivalent to 83 decimal)
$a = 0o123; // octal number (as of PHP 8.1.0)
$a = 0x1A; // hexadecimal number (equivalent to 26 decimal)
$a = 0b11111111; // binary number (equivalent to 255 decimal)
برگرفته از مستندات PHP
از اعداد ممیز شناور در PHP برای نمایش زیرمجموعهای از اعداد حقیقی استفاده میشود. این اعداد با یک یا چند رقم شروع میشوند که با یک جداکنندهی اعشار از یکدیگر جدا شدهاند.
<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
$d = 1_234.567; // as of PHP 7.4.0
همهی اعداد و عملیات حسابی را نمیتوان با اعداد ممیز شناور انجام داد. استفاده از اعداد ممیز شناور برای نمایش دلار و سنت میتواند به خطاهای گرد کردن منجر شود.
<?php
$result = 0.1 + 0.2; // => 0.30000000000000004
PHP تعدادی عملگر برای انجام عملیات حسابی فراهم میکند. PHP در عملگرهای حسابی خود از ترتیب استاندارد ریاضی عملیات پیروی میکند. عملگرهایی که PHP فراهم میکند عبارتاند از:
$moles = +'10';
$aLotOfMoles = 6.022 * 10**23 * $moles;
Lilly عاشق آشپزی است. او میخواهد با دوستانش یک مهمانی پیتزا برگزار کند. برای اینکه نهایت استفاده را از مواد اولیهاش ببرد، باید بداند پیش از شروع، به چه مقدار از هر ماده نیاز دارد.
برای حل این مسئله، Lilly برنامهای نوشته است تا بخشی از برنامهریزی را خودکار کند، اما برای کامل کردنش به کمک شما نیاز دارد. آیا به Lilly کمک میکنید تا مهمانی پیتزایی با تناسب کامل برگزار کند؟
Lilly عاشق پیتزاهای نازک و ترد با خمیر نازکتر است. خمیر لازم برای وسط حداقل ۲۰۰ گرم است، اما هر نفری که قرار است از این پیتزا سهم ببرد، ۲۰ گرم خمیر دیگر نیاز دارد.
grams = pizzas * ((persons * 20) + 200)
Lilly به تابعی نیاز دارد که:
برای مثال، برای درست کردن ۴ پیتزا که ۸ نفر را سیر میکند:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateDoughRequirement(4, 8);
// => 1440
Lilly در ریختن سس وسواس زیادی به خرج میدهد، اما اندازهی پیتزاهایش ممکن است یکسان نباشد. از تجربهاش میداند که برای هر پیتزا ۱۲۵ میلیلیتر سس لازم است. Lilly به تابعی نیاز دارد که حساب کند چند قوطی سس باید بخرد.
cans of sauce = pizzas * sauce per pizza / sauce can volume
برای مثال، فرض کنید Lilly باید ۸ پیتزا درست کند و هر قوطی ۲۵۰ میلیلیتر است:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateSauceRequirement(8, 250);
// => 4
پنیر به شکل مکعبهای کامل عرضه میشود و بر اساس اندازه فروخته میشود.
فرمولی که Lilly استفاده میکند، فرمول مساحت پیتزا نیست، چون او نمیخواهد پنیر کل سطح را بپوشاند.
او تصمیم گرفت از فرمول زیر استفاده کند تا تعیین کند از یک مکعب پنیر با طول ضلع مشخص (cheese_dimension) چند پیتزا با قطر مشخص (diameter) میتوان درست کرد:
pizzas = (cheese_dimension³) / (thickness * PI * diameter)
تابعی بسازید که:
برای مثال، فرض کنید یک مکعب پنیر ۲۵×۲۵×۲۵ سانتیمتر، لایهی پنیر با ضخامت ۰٫۵ سانتیمتر و پیتزاهایی با قطر ۳۰ سانتیمتر داریم:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateCheeseCubeCoverage(25, 0.5, 30);
// => 331
در پایان، Lilly میخواهد هر پیتزا به ۸ برش تقسیم شود و بهطور یکسان بین دوستانش پخش شود.
تابعی بسازید که:
برای مثال:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateLeftOverSlices(2, 4);
// => 0
$pizza_pi->calculateLeftOverSlices(4, 3);
// => 2