الأعداد الصحيحة هي أعداد كاملة تنتمي إلى المجموعة {..., -2, -1, 0, 1, 2, ...}.
تتحدد القيمة العظمى والصغرى للعدد الصحيح وفق النظام الذي يعمل عليه PHP.
وعلى الأنظمة الحديثة عادةً، يكون العدد الصحيح قيمة ذات 64 بت، أي أنه يستطيع تمثيل القيم من -9_223_372_036_854_775_808 إلى 9_223_372_036_854_775_807 ضمناً.
<?php
$a = 1234;
$a = 1_234_567;
يمكنك كتابة قيم الأعداد الصحيحة في أساس غير الأساس 10 باستخدام بادئة الأساس:
<?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 البيتزا الرقيقة المقرمشة ذات القشرة الرفيعة. العجين اللازم للجزء الأوسط 200 غرام كحد أدنى، لكن كل شخص تخدمه البيتزا يحتاج إلى 20 غرامًا إضافية من العجين.
grams = pizzas * ((persons * 20) + 200)
تحتاج Lilly إلى دالة تقوم بما يلي:
مثلًا، لإعداد 4 بيتزات تكفي 8 أشخاص:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateDoughRequirement(4, 8);
// => 1440
Lilly دقيقة جدًا في توزيع صلصتها، لكن أحجام بيتزاتها قد تكون متفاوتة. ومن خبرتها، تعرف أن كل بيتزا تحتاج إلى 125 مل من الصلصة. تحتاج Lilly إلى دالة تحسب عدد علب الصلصة التي يجب شراؤها.
cans of sauce = pizzas * sauce per pizza / sauce can volume
مثلًا، إذا كانت Lilly بحاجة إلى إعداد 8 بيتزات، وكانت كل علبة 250 مل:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateSauceRequirement(8, 250);
// => 4
يُباع الجبن على شكل مكعبات تامة حسب الحجم.
الصيغة التي تستخدمها Lily ليست صيغة مساحة البيتزا، لأنها لا تريد أن تغطي الجبنة المساحة كاملة.
لذلك قررت استخدام الصيغة التالية لمعرفة عدد البيتزات ذات قطر معيّن (diameter) التي يمكن إعدادها من مكعب جبن بطول ضلع معيّن (cheese_dimension):
pizzas = (cheese_dimension³) / (thickness * PI * diameter)
أنشئ دالة تقوم بما يلي:
مثلًا، إذا كان لدينا مكعب جبن بأبعاد 25x25x25 سم، وطبقة جبن بسماكة 0.5 سم، وبيتزات بقطر 30 سم:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateCheeseCubeCoverage(25, 0.5, 30);
// => 331
وأخيرًا، تريد Lilly أن تُقسَّم بيتزاتها إلى 8 شرائح لكل بيتزا وأن تُوزَّع بالتساوي بين أصدقائها.
أنشئ دالة تقوم بما يلي:
مثلًا:
<?php
$pizza_pi = new PizzaPi();
$pizza_pi->calculateLeftOverSlices(2, 4);
// => 0
$pizza_pi->calculateLeftOverSlices(4, 3);
// => 2
سجّل في Exercism لتتعلّم وتتقن PHP عبر 11 مفهومًا122 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.