سلام دوست عزیز😃👋
به آزمون ورودی کارآموزی تابستانه Front-End کداستار خوش آمدید!
مسابقه به مدت ۳ ساعت و نیم ادامه خواهد داشت و در مجموع شامل ۵ سوال است. برای حل سوالات باید به HTML و CSS و JavaScript مسلط باشید به طوری که ۲ سوال اول مربوط به HTML و CSS هستند و ۳ سوال آخر مربوط به JavaScript هستند. برای حل سوالات JavaScript نیازی به تسلط بر روی Framework هایی مانند React و Angular نیست و صرفا دانش JavaScript پایه کافی است.
سوالات به گونهای تنظیم شدهاند که با توجه به دانشی که دارید بتوانید بخشی از نمرۀ سوال را بگیرید. به عنوان مثال اگر نتوانید سوال ۳ را به طور کامل حل کنید، این امکان وجود دارد که بتوانید بخشی از سوال ۴ را حل کنید؛ بنابراین حتما به تمام سوالات مراجعه کنید.
رتبهبندی بر اساس مجموع امتیازاتی که از سوالات کسب میکنید صورت میگیرد؛ همچنین در صورتی که امتیاز دو نفر یکسان شود، کسی که سوالات را در مدتزمان کمتری حل کرده باشد، رتبۀ بهتری کسب میکند.
در صورتی که درمورد سوالی ابهام داشتید، میتوانید از قسمت «سوال بپرسید» آن را مطرح کنید.
برای کسب اطلاعات بیشتر به لینکهای زیر مراجعه کنید:
موفق باشید 😉✌
رمز سزار یکی از سادهترین روشهای رمزنگاری است. در این روش برای رمز کردن یک رشته، یک عدد ثابت که عضو بازهی است در نظر گرفته میشود و همهی کاراکترهای رشته، واحد به سمت جلو شیفت داده میشوند. برای مثال اگر را در نظر بگیریم، کاراکتر A
به B
یا کاراکتر Z
به A
تبدیل میشود. برای حروف کوچک انگلیسی نیز به همین ترتیب تبدیل میشوند؛ برای مثال اگر را در نظر بگیریم، کاراکتر z
به b
و کاراکتر h
به j
تبدیل میشود. در مقابل فرایند رمزنگاری فرایند رمزگشایی را داریم که برعکس فرایند رمزنگاری صورت میگیرد، یعنی هر کاراکتر واحد به سمت عقب شیفت داده میشود.
در این فرایندها، میتوان هر کاراکتر را یک عدد عضو بازهی در نظر گرفت؛ یعنی کاراکترهای a
و A
با عدد 0
متناظر هستند، کاراکترهای b
و B
با عدد 1
متناظر هستند و ...
توجه: اگر بزرگتر از ۲۵ باشد، باشد، باید باقیماندهی تقسیم آن بر ۲۶ را در نظر گرفت. همچنین، تضمین میشود که رشتهی ورودی فقط شامل کاراکترهای a-z
و A-Z
است (یا ممکن است رشتهای خالی باشد).
پروژه اولیه را از این لینک دانلود کنید.
main.js
را در ادیتور خود باز کنید و کد مورد نظر خود را در آن پیاده سازی کنید.در این مسئله شما باید دو تابع encrypt
و decrypt
را پیادهسازی کنید که این دو تابع باید شرایط زیر را دارا باشند:
تابع encrypt(str, n)
: این تابع، کاراکترهای رشتهی ورودی را به اندازهی n واحد به جلو شیفت میدهد.
تابع decrypt(str, n)
: این تابع، کاراکترهای رشتهی ورودی را به اندازهی n واحد به عقب شیفت میدهد.
خروجی کد بالا:
main.js
هستید.main.js
خود را آپلود نمایید.