یک برنامهٔ PHP بنویسید که یک رشتهٔ عدد باینری را از کاربر دریافت کند و مقدار دهدهی معادل آن را با استفاده از تابع bindec محاسبه و نمایش دهد.

10.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 00:35

0.0

برای حل این مسئله از تابع داخلی PHP یعنی bindec استفاده کنید: ابتدا ورودی را با trim دریافت کرده و با preg_match('/^[01]+$/') اعتبارسنجی کنید تا فقط کاراکترهای 0 و 1 مجاز باشند، سپس با bindec مقدار دهدهی را محاسبه کرده و با echo نمایش دهید. نکته‌ها: برای ورودی‌های بسیار بزرگ که ممکن است از محدودهٔ اعداد صحیح PHP فراتر روند از base_convert یا توابع GMP استفاده کنید و در برنامهٔ خود پیام خطا برای ورودی نامعتبر قرار دهید.

توسط پژوهشگر در 198 روز قبل ساعت 00:35
دسته بندی ها: PHP PHP for beginner
nima در 198 روز قبل ساعت 00:36

برای تبدیل رشتهٔ باینری به دهدهی از bindec استفاده کنید اما ابتدا با trim و preg_match('/^[01]+$/') اعتبارسنجی و طول ورودی را محدود کنید تا از حملات یا مصرف بیش از حد حافظه جلوگیری شود. توجه داشته باشید که bindec برای رشته‌های خیلی بزرگ ممکن است از محدودهٔ اعداد صحیح PHP فراتر رفته و نتیجه را به float تبدیل کند؛ برای اعداد بزرگ از base_convert یا توابع GMP مثل gmp_init و gmp_strval استفاده کنید. حتما برای ورودی نامعتبر پیام خطا نمایش دهید و در صورت نیاز عدد خروجی را با format یا cast مناسب قالب‌بندی کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری