English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
هذا المقال يشرح كيفية تحقيق الحسابات الكبيرة (العدد العشري) المتبقية في PHP. نشاركها معكم للاستفادة منها، ويتمثل ذلك فيما يلي:
عادة ما يكون أول ما يتبادر إلى أذهاننا عند القيام بحسابات المتبقية هو استخدام علامة النسبة المئوية %، ولكن عندما يكون القسمة قيمة كبيرة، تتجاوز نطاق int، تصبح هذه الطريقة غير دقيقة.
وظيفة php للحسابات الكبيرة (العدد العشري) المتبقية:
/** * php الحسابات الكبيرة المتبقية * * @param int or float $bn القسمة * @param int $sn المعد * @return int الباقي */ //طريقة أخذ الباقي للعدد الكبير (العدد العشري) function Kmod($bn, $sn) { return intval(fmod(floatval($bn), $sn)); }
كود الاختبار:
//طريقة أخذ الباقي للعدد الكبير (العدد العشري) function Kmod($bn, $sn) { return intval(fmod(floatval($bn), $sn)); } //طريقة أخذ الباقي للعدد الصحيح function mod($bn, $sn) { return $bn%$sn; } //أكبر عدد صحيح $bn = PHP_INT_MAX; $sn = 11; var_dump($bn); var_dump(Kmod($bn, $sn)); var_dump(mod($bn, $sn)); //إضافة 1 إلى أكبر عدد صحيح $bn = PHP_INT_MAX + 1; var_dump($bn); var_dump(Kmod($bn, $sn)); var_dump(mod($bn, $sn));
نتيجة التنفيذ:
int 2147483647 int 1 int 1 float 2147483648 int 2 int -2
للمزيد من المعلومات حول PHP، يمكن للقراء المهتمين الاستفسار عن موضوعات هذا الموقع: 'تجميع تقنيات الحسابات في PHP'، 'تجميع استخدامات العمليات الحسابية والوظائف في PHP'، 'تجميع استخدامات الأنواع النصية في PHP'، 'دليل شامل لتعاملات الأنواع الحسابية في PHP'، 'تجميع تقنيات التدوير في PHP'، 'دليل على بنيات البيانات والخوارزميات في PHP'، 'تجميع تقنيات البرمجة في PHP'، 'تجميع استخدامات التعبيرات النمطية في PHP'، و 'تجميع تقنيات التعامل مع قواعد البيانات الشائعة في PHP'.
آمل أن يساعدك محتوى هذا المقال في تصميم برامج PHP الخاصة بك.
بيان: محتوى هذا المقال تم جمعه من الإنترنت، ملكية المقال مملوكة للمساهمين في الإنترنت، تم تحميل المحتوى من قبل المستخدمين عبر الإنترنت، هذا الموقع لا يمتلك حقوق الملكية، لم يتم تعديل المحتوى بشكل يدوي، ولا يتحمل هذا الموقع أي مسؤولية قانونية. إذا اكتشفت محتوى يشتبه في انتهاك حقوق النسخ، فالرجاء إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # ب @) لإبلاغنا، وقدم الدليل على الأدلة، إذا تم التحقق من ذلك، سيتم حذف المحتوى المزعوم فورًا.