
يحتوي هذا المستودع على مجموعة من تحديات ترميز JavaScript المصممة لمساعدتك على تحسين مهاراتك واختبار معرفتك باللغة. يرافق كل تحدٍ ملف readMe الذي يشرح بيان المشكلة ، والإدخال/الإخراج ، وأي متطلبات إضافية.
ستكون الإجابات متاحة في/solutions/problem_title/answer.js بينما سيتم تقديم التفسير في /solutions/problem_title/readme.md.
تأكد من تشغيل المستودع إذا وجدت أنه مفيد. والمساهمات في المستودع موضع ترحيب.
قبل المضي قدمًا ، إذا كنت مبتدئًا كاملًا ولا تعرف أي شيء عن البرمجة أو JavaScript ، فقد ترغب في إلقاء نظرة على الموارد التالية:
اكتب برنامجًا يطبع الأرقام من 1 إلى 100. ولكن بالنسبة للمضاعفات من ثلاثة ، قم بطباعة "fizz" بدلاً من الرقم ومضاعفات خمسة ، طباعة "الطنانة". بالنسبة للأرقام التي هي مضاعفات من ثلاثة وخمسة ، طباعة "fizzbuzz". على سبيل المثال ، يجب أن يطبع البرنامج:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
. . .شرح الحل
قم بإنشاء وظيفة تأخذ سلسلة كوسيطة وإرجاع true إذا كانت palindrome false إذا لم تكن كذلك. palindrome هي كلمة أو عبارة أو رقم أو تسلسل آخر من الأحرف التي تقرأ نفس الشيء إلى الأمام والخلف. على سبيل المثال ، "Racecar" هو palindrome ، ولكن "Hello" ليس كذلك.
شرح الحل
اكتب وظيفة تأخذ الرقم n كمدخلات وإرجاع الأرقام n الأولى في تسلسل Fibonacci. تسلسل Fibonacci هو سلسلة من الأرقام التي يكون فيها كل رقم هو مجموع الرقمين السابقتين. الرقمين الأولين في التسلسل هما 0 و 1. على سبيل المثال ، إذا كانت n 5 ، فيجب أن تُرجع الوظيفة الصفيف [0, 1, 1, 2, 3] .
شرح الحل
اكتب وظيفة تأخذ سلسلة وإرجاع أطول كلمة في السلسلة. إذا كانت هناك كلمتين أو أكثر من نفس الطول ، فأرجع أول كلمة تظهر في السلسلة. على سبيل المثال ، إذا كانت سلسلة الإدخال هي "الثعلب البني السريع تقفز فوق الكلب الكسول" ، فيجب أن تعود الوظيفة "Quick".
شرح الحل
اكتب وظيفة تأخذ سلسلة كمدخلات وإرجاع السلسلة عكسها. على سبيل المثال ، إذا كانت سلسلة الإدخال "Hello" ، فيجب أن تُرجع الوظيفة "Olleh".
شرح الحل
اكتب وظيفة تأخذ سلسلة كمدخلات وإرجاع السلسلة مع الحرف الأول من كل كلمة. على سبيل المثال ، إذا كانت سلسلة الإدخال هي "الثعلب البني السريع" ، فيجب أن تُرجع الوظيفة "الثعلب البني السريع".
شرح الحل
اكتب وظيفة تأخذ رقمًا كمدخلات ويُرجع true إذا كان رقمًا أوليًا false إذا لم يكن كذلك. الرقم الرئيسي هو رقم طبيعي أكبر من 1 ليس نتاجًا لأرقام طبيعية أصغر. على سبيل المثال ، 2 و 3 و 5 و 7 و 11 و 13 هي أعداد رئيسية ، ولكن 4 و 6 و 8 و 9 ليست كذلك.
شرح الحل
اكتب وظيفة تأخذ رقمًا كمدخلات وإرجاع مجموع أرقامها. على سبيل المثال ، إذا كان رقم الإدخال هو 123 ، فيجب أن تُرجع الوظيفة 6 (1 + 2 + 3 = 6).
شرح الحل
اكتب وظيفة تأخذ سلسلة كمدخلات وإرجاع السلسلة مع الحرف الأول من كل كلمة. على سبيل المثال ، إذا كانت سلسلة الإدخال هي "الثعلب البني السريع" ، فيجب أن تُرجع الوظيفة "الثعلب البني السريع". لاحظ أن الوظيفة يجب أن تستفيد من الحرف الأول من كل كلمة ، حتى لو كانت كلمة صغيرة مثل "و" أو "The".
شرح الحل
اكتب وظيفة تأخذ رقمًا كمدخلات وإرجاع مصنعها. عامل العدد هو نتاج جميع الأعداد الصحيحة الإيجابية من 1 إلى العدد نفسه. على سبيل المثال ، يكون المصنع لـ 5 هو 120 (1 _ 2 _ 3 _ 4 _ 5 = 120).
اكتب وظيفة تسمى factorial التي تأخذ الرقم كمعلمة لها ويعيد عوامله. إذا كان رقم الإدخال 0 ، فيجب أن تُرجع الوظيفة 1.
شرح الحل
اكتب وظيفة تأخذ مجموعة من الأرقام كمدخلات وإرجاع ثاني أكبر رقم في الصفيف. على سبيل المثال ، إذا كان صفيف الإدخال هو [5 ، 10 ، 7 ، 2 ، 1] ، فيجب أن تعود الوظيفة 7.
اكتب وظيفة تسمى secondLargest التي تأخذ مجموعة من الأرقام كمعلمة لها ويعيد ثاني أكبر رقم في المصفوفة.
شرح الحل
اكتب وظيفة تأخذ رقمين كمدخلات وإرجاع أصغر مضاعفات شائعة من هذه الأرقام. أصغر مضاعف شائع هو أصغر عدد يمكن تقسيمه بواسطة كل من أرقام الإدخال. على سبيل المثال ، أصغر مضاعف شائع من 3 و 4 هو 12.
اكتب وظيفة تسمى smallestCommonMultiple التي تأخذ رقمين كمعلمات لها ويعيد أصغر مضاعفات شائعة لتلك الأرقام.
شرح الحل
اكتب وظيفة تأخذ صفيفًا كمدخلات وإرجاع مجموعة جديدة مع إزالة جميع العناصر المكررة. على سبيل المثال ، إذا كان صفيف الإدخال هو [1 ، 2 ، 2 ، 3 ، 4 ، 4 ، 5] ، فيجب أن تعود الوظيفة [1 ، 2 ، 3 ، 4 ، 5].
اكتب وظيفة تسمى removeDuplicates التي تأخذ صفيف كمعلمة لها وإرجاع مجموعة جديدة مع إزالة جميع العناصر المكررة.
شرح الحل
اكتب وظيفة تأخذ صفيفًا كمدخلات وإرجاع مبلغ السجل الفرعي القصوى. المصفوفات الفرعية هي صفائف داخل صفيف آخر لا يحتوي إلا على عناصر متجاورة. على سبيل المثال ، إذا كانت الصفيف [-3 ، -4 ، 5 ، -1 ، 2 ، -4 ، 6 ، -1] ، فيجب أن تعود الوظيفة 8 منذ أن سفر الفرعي [5 ، -1 ، 2 ، -4 ، 6] هو Max Sum Counbuate مع Sum 8.
اكتب وظيفة MaxSubArraySum التي تأخذ صفيف كمعلمة لها وإرجاع الحد الأقصى لمجموع الجهاز الفرعي.
شرح الحل
اكتب وظيفة تأخذ رقمين كمدخلات ومقايضة الأرقام. على سبيل المثال ، إذا كانت المدخلات هي num_1 = 5 و num_2 = 10 ، يجب إرجاع الوظيفة num_1 = 10 و num_2 = 5
اكتب swap دالة يأخذ اثنين من الأعداد الصحيحة كمعلمة لها وتبادلهما.
شرح الحل
اكتب وظيفة تأخذ درجة حرارة في مئوية كمدخلات وإرجاع درجة الحرارة المكافئة في فهرنهايت. صيغة تحويل celsius إلى fahrenheit هي f = (c * 1.8) + 32.
اكتب وظيفة تسمى celsiusToFahrenheit التي تأخذ درجة حرارة في Celsius كمعلمة لها وإرجاع درجة الحرارة المكافئة في فهرنهايت.
شرح الحل
اكتب وظيفة تأخذ رقمًا كمدخلات وإرجاع SUM من 1 إلى n على سبيل المثال ، إذا كان الإدخال 10 ، فيجب أن تُرجع الوظيفة 55.
اكتب وظيفة تسمى getNaturalSum التي تأخذ الرقم n كمعلمة لها وإرجاع مجموع العدد الطبيعي.
شرح الحل
اكتب وظيفة تأخذ رقمًا عشريًا كمدخلات وإرجاع السلسلة الثنائية. على سبيل المثال ، إذا كان الإدخال 12 ، فيجب أن تُرجع الوظيفة 1100.
اكتب وظيفة تسمى decimalToBinary التي تأخذ رقمًا عشريًا على أنه decimal في معلمها ويعيد السلسلة الثنائية.
شرح الحل
اكتب وظيفة تأخذ سلسلة كمدخلات وإرجاع عدد من حروف العلة في السلسلة. على سبيل المثال ، إذا كانت السلسلة "Hello World!" ، يجب أن تعود الوظيفة 3.
اكتب وظيفة تسمى countVowels التي تأخذ سلسلة مثل str في معلمةها وإرجاع عدد حروف العلة في السلسلة.
شرح الحل
اكتب وظيفة تأخذ سلسلة عناوين URL كمدخلات وإرجاع صحيح إذا كان عنوان URL صالحًا وخاطئًا خلاف ذلك. على سبيل المثال ، إذا كانت السلسلة هي "https://www.example.com" ، فيجب أن ترجع الوظيفة بشكل صحيح.
اكتب وظيفة تسمى isValidURL التي تأخذ عنوان URL للسلسلة كعنوان url في معلمه ويعيد صحيحًا أو خطأ.
شرح الحل
اكتب وظيفة تتحقق مما إذا كانت سلسلة معينة اسم مستخدم صالح. يجب أن يحتوي اسم المستخدم الصحيح على أحرف أبجدية رقمية فقط ، ويجب أن يتراوح طولها بين 4 و 16 حرفًا.
اكتب وظيفة تسمى isValidUsername التي تأخذ username سلسلة في معلمها ويعيد صحيحًا أو خطأ.
شرح الحل
اكتب وظيفة تتحقق إذا كانت سنة معينة سنة قفزة.
اكتب وظيفة تسمى isLeapYear التي تستغرق year في معلمتها وتُرجع صحيحًا أو خطأ.
شرح الحل
اكتب وظيفة JavaScript لتجميع جميع العناصر في صفيف.
اكتب وظيفة تسمى sumArray التي تأخذ array في معلمتها وإرجاع مجموع جميع عناصر الصفيف.
شرح الحل
اكتب وظيفة للعثور على أطول كلمة في جملة.
اكتب وظيفة تسمى findLongestWord التي تأخذ String كجملة sentence لسلسلة النوع وإرجاع أطول كلمة في الجملة.
شرح الحل
اكتب وظيفة للتحقق مما إذا كان الكائن فارغًا أم لا.
اكتب وظيفة تسمى isObjEmpty التي تأخذ كائن obj كوسائط ستعود بشكل صحيح إذا كانت فارغة غير خاطئة.
شرح الحل
اكتب وظيفة يمكنها تحويل الوقت من تنسيق 12 ساعة إلى تنسيق 24 ساعة.
اكتب وظيفة تسمى convertTo24HrsFormat والتي تستغرق time كمعلمة في HH:MMAM Format. على سبيل المثال ، 12:10AM .
شرح الحل
صدر تحت معهد ماساتشوستس للتكنولوجيا بواسطة computenepal.