یک اسکریپت Bash بنویسید که از کاربر یک عدد صحیح بین 1 تا 100 بپرسد و تا زمانی که ورودی معتبر (عدد صحیح و در بازهٔ مشخص) وارد نشود، پیغام خطا نمایش دهد و دوباره درخواست کند، سپس عدد معتبر را چاپ کند.
8.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:18 0.0
برای حل از read -p برای گرفتن ورودی استفاده کنید و در یک حلقهٔ while ورودی را با شرطهایی مثل بررسی خالی نبودن، مطابقت با الگوی عدد صحیح (مثلاً با [[ $input =~ ^[0-9]+$ ]]) و بررسی محدوده با ارزیابی عددی (( )) کنترل کنید؛ در صورت نامعتبر بودن پیام مناسب چاپ کرده و دوباره درخواست کنید. نکات: از trim کردن فضای سفید ورودی غافل نشوید، از exit code مناسب استفاده کنید و برای خوانایی از توابع کوچک برای اعتبارسنجی بهره ببرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای ورودی امن از read -r استفاده کنید تا از تفسیر کاراکترهای بکاسلش جلوگیری شود و مقدار را در متغیر input نگه دارید. قبل از اعتبارسنجی با trim ساده فاصلههای ابتدایی و انتهایی را حذف کنید تا ورودی خالی یا فقط فضاها نباشد. اپلیکیشن با [[ $input =~ ^[0-9]+$ ]] برای عدد بودن و با (( n=input )) سپس بررسی کنید که n بین 1 تا 100 است؛ در غیر این صورت پیام خطا بدهید و دوباره درخواست کنید. در پایان عدد معتبر را چاپ و از exit 0 برای موفقیت استفاده کنید و در مواقع نامعتبر exit غیر صفر بدهید تا روند شفاف باشد.
گزارش