در PHP یک اسکریپت بنویسید که یک رشتهٔ دودویی را از کاربر بگیرد، با استفاده از تابع bindec مقدار دهدهی آن را محاسبه کند و برای ورودیهای نامعتبر پیام خطا نمایش دهد.
10.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:50 0.0
برای حل این مسئله رشتهٔ ورودی را ابتدا با trim پاکسازی کنید، سپس با یک الگوی منظم مثل preg_match('/^[01]+$/') بررسی کنید که فقط شامل ارقام 0 و 1 باشد. در صورت معتبر بودن از تابع داخلی bindec برای تبدیل آن به عدد دهدهی استفاده و نتیجه را نمایش دهید؛ در غیر این صورت پیامی مبنی بر ورودی نامعتبر صادر کنید. برای کاربردهای مالی/علمی و آماری میتوانید خروجی را در قالب عدد صحیح یا رشته نمایش دهید. توجه کنید که برای رشتههای دودویی بسیار طولانی ممکن است bindec به محدودیتهای اندازه و دقت برخورد کند؛ در این حالت از gmp یا تابع base_convert/BCMath برای دقت بیشتر و اعداد بزرگتر استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای اعتبارسنجی ورودی، ابتدا با trim رشته را تمیز کنید تا فضاهای جانبی حذف شوند. از preg_match('/^[01]+$/', $input) استفاده کنید تا فقط اعداد 0 و 1 مجاز باشند. اگر معتبر بود، مقدار را با bindec تبدیل کنید، اما برای رشتههای دودویی طولانی که با محدودیتهای اندازه مواجه میشوند، از GMP/BCMath یا base_convert استفاده کنید. در نهایت پیام خطای واضحی به کاربر بدهید و خروجی را به شکل عدد صحیح یا رشته نمایش دهید.
گزارش