سلیب که به تازگی شرکت خود را تاسیس کرده اکنون با چالش جدیدی مواجه شده، مدیریت کارمندان! در حال حاضر او نیاز دارد تا بتواند هرگاه که اراده کرد به هر کارمند خود به عنوان تشویق پاداش بدهد یا اطلاعات تمامی کارمندان ساکن شهر خاصی را ببیند.

سلیب اطلاعات تمامی کارمندان خود را در یک فایل با نام employee.csv ذخیره کرده که محتوای آن به فرمت زیر است:

10012,Tehran,Seyed Ali Babaei,09121212121,4000,Narmak-Kooche-Aval
20221,Tehran,Mostafa Karimi,09131313131,3900,Kerman-Kooche-Aval
40521,Semnan,Amin Anvari,09123456789,3800,Piroozi-Kooche-Aval
12140,ALborz,Nima Heydari Nasab,09383838383,4100,Fardis-Kooche-Aval
CSV
employee.csv

در ستون اول آیدی کارمند، در ستون دوم شهر کارمند، در ستون سوم نام کارمند، در ستون چهارم شماره تلفن کارمند، در ستون پنجم حقوق کارمند و در ستون ششم آدرس کارمند مشاهده می‌شود.

او که چیزی از ترمینال لینوکس و اسکریپت‌نویسی نمی‌داند از شما کمک خواسته تا برای او دو کار زیر را انجام دهید:

  • دستوری با نام bonus تعریف کنید تا با دریافت آیدی کارمند، به میزان ۵ درصد حقوق او به او پاداش دهد. یعنی با اجرای دستور زیر:
./manager.sh bonus 40521
Terminal
bash

خروجی زیر مشاهده شود:

Amin Anvari will get $190 bonus
Terminal
bash
  • دستوری با نام city تعریف کنید تا با دریافت شهر مورد نظر سلیب، نام و شماره تلفن تمام کارمندان ساکن آن شهر او را خروجی بدهد. یعنی با اجرای دستور زیر:
./manager.sh city ALborz
Terminal
bash

خروجی زیر مشاهده شود:

Customer Name: Nima Heydari Nasab
Mobile No: 09383838383
Terminal
bash
  • در صورتی که پارامتر اول ورودی هیچ‌کدام از دو حالت بالا نبود، اسکریپت باید عبارت command not found را چاپ کند.

مثال

برای مثال اگر اسکریپت شما را مانند زیر اجرا کنیم:

./manager.sh bonus 10012
Terminal
bash

باید خروجی زیر را دهد:

Seyed Ali Babaei will get $200 bonus
Terminal
bash

یا اگر اسکریپت شما را مانند زیر اجرا کنیم:

./manager.sh city Tehran
Terminal
bash

باید خروجی زیر را دهد:

Customer Name: Seyed Ali Babaei
Mobile No: 09121212121
Customer Name: Mostafa Karimi
Mobile No: 09131313131
Terminal
bash

پروژه اولیه

برای دریافت پروژه اولیه این لینک را دانلود کنید. درون لینک ساختار فایلی زیر را مشاهده می‌کنید:

Employee-Management
├── employee.csv
└── manager.sh
Plain text

راه‌حل خود را درون فایل manager.sh پیاده‌سازی کنید.

توجه کنید

  • به تمامی فاصله‌های خالی بین حروف خروجی دقت کنید.
  • اطلاعات مورد نیاز شما در سیستم داوری درون فایل employee.csv در کنار اسکریپت شما قرار دارد.
  • دسترسی اجرا به فایل ارسالی شما به طور خودکار در سیستم داوری داده می‌شود.
  • تضمین می‌شود ۵ درصد حقوق کارمندان همواره عددی صحیح است.

نحوه ارسال

برای ارسال جواب دستورات خواسته شده را درون فایلی با نام manager.sh وارد کنید و آن را انتخاب و سپس ارسال کنید.


ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.