freeCodeCamp/guide/arabic/certifications/javascript-algorithms-and-d.../basic-algorithm-scripting/repeat-a-string-repeat-a-st.../index.md

6.8 KiB

title localeTitle
Repeat a String Repeat a String كرر سلسلة يكرر سلسلة

:triangular_flag_on_post: تذكر استخدام Read-Search-Ask إذا واجهتك مشكلة. حاول إقران البرنامج :busts_in_silhouette: واكتب الكود الخاص بك :pencil:

:checkered_flag: شرح المشكلة:

البرنامج بسيط جداً ، وعلينا أن نأخذ متغيراً ونعيد هذا المتغير إلى تكرار قدر معين من المرات. لا حاجة لإضافة مساحة أو أي شيء ، فقط استمر في تكرارها في سلسلة واحدة.

روابط ذات صلة

:speech_balloon: تلميح: 1

لا يمكنك تحرير السلاسل ، ستحتاج إلى إنشاء متغير لتخزين السلسلة الجديدة.

حاول أن تحل المشكلة الآن

:speech_balloon: تلميح: 2

قم بإنشاء حلقة لتكرار الكود عدة مرات حسب الحاجة.

حاول أن تحل المشكلة الآن

:speech_balloon: تلميح: 3

جعل المتغير إنشاء تخزين القيمة الحالية وإلحاق الكلمة إليها.

حاول أن تحل المشكلة الآن

تنبيه المفسد!

علامة تحذير

الحل في المستقبل!

:beginner: الحل الأساسي للكود:

`function repeatStringNumTimes(str, num) { var accumulatedStr = '';

while (num > 0) { accumulatedStr += str; num--; }

return accumulatedStr; } `

:rocket: تشغيل الكود

شرح الشفرة:

  • قم بإنشاء متغير سلسلة فارغ لتخزين الكلمة المكررة.
  • استخدم حلقة while (أثناء) أو للحلقة لتكرار التعليمة البرمجية عدة مرات حسب الحاجة وفقًا لعدد num
  • ثم يجب علينا فقط إضافة السلسلة إلى المتغير الذي تم إنشاؤه في الخطوة الأولى ، وزيادة أو تقليل عدد num اعتمادًا على كيفية تعيين الحلقة.
  • في نهاية الحلقة ، قم بإرجاع المتغير للكلمة المكررة.

روابط ذات صلة

:sunflower: حل الشفرة المتوسطة:

function repeatStringNumTimes(str, num) { if(num < 0) return ""; if(num === 1) return str; else return str + repeatStringNumTimes(str, num - 1); }

:rocket: تشغيل الكود

شرح الشفرة:

  • يستخدم هذا الحل العودية.
  • نتحقق مما إذا كانت قيمة num سالبة وترجع سلسلة فارغة إذا كانت صحيحة.
  • ثم نتحقق مما إذا كان يساوي 1 وفي هذه الحالة نقوم بإرجاع السلسلة نفسها.
  • إن لم يكن، ونضيف إلى سلسلة لدعوة من وظيفتنا مع num التي انخفضت بنسبة 1، الأمر الذي سيزيد من آخر str وآخر .. حتى في نهاية المطاف num هي 1. وتعود تلك العملية برمتها.

روابط ذات صلة

:rotating_light: الحل المتقدم للكود:

`function repeatStringNumTimes(str, num) { return num > 0 ? str.repeat(num) : ''; }

repeatStringNumTimes("abc", 3); `

:rocket: تشغيل الكود

شرح الشفرة:

  • هذا الحل يأخذ نهج إعلاني.
  • وهو مماثل للحل الثالث ، باستثناء أنه يستخدم نموذج المشغل الثلاثي لبيان if .

روابط ذات صلة

:clipboard: ملاحظات للمساهمات:

  • :warning: لا تقم بإضافة حلول مشابهة لأي حلول موجودة. إذا كنت تعتقد أنها مشابهة ولكن أفضل ، فحاول دمج (أو استبدال) الحل المشابه الموجود.
  • أضف شرحًا لحلك.
  • تصنيف الحل في واحدة من الفئات التالية - الأساسي والمتوسط والمتقدم . :traffic_light:
  • الرجاء إضافة اسم المستخدم الخاص بك فقط إذا قمت بإضافة أي محتويات رئيسية ذات صلة . ( :warning: لا تزيل أي أسماء مستخدمين حالية )

نرى :point_right: Wiki Challenge Solution Template كمرجع.