Files
freeCodeCamp/curriculum/challenges/arabic/02-javascript-algorithms-and-data-structures/basic-algorithm-scripting/repeat-a-string-repeat-a-string.md
2022-10-20 09:13:17 -07:00

1.9 KiB

id, title, challengeType, forumTopicId, dashedName
id title challengeType forumTopicId dashedName
afcc8d540bea9ea2669306b6 تكرار مقطع (String) نصي تكرار مقطع (String) نصي 1 16041 repeat-a-string-repeat-a-string

--description--

كرر مقطع (String) نصي معين str (الحجَّة الأولى) لعدد num مرات (الحِجَّة الثانية). انتج مقطع (String) نصي فارغ إذا كان num ليس رقماً موجباً. لأغراض هذا التحدي، لا تستخدم الوظيفة .repeat() المدمجة.

--hints--

repeatStringNumTimes("*", 3) يجب أن ينتج المقطع ***.

assert(repeatStringNumTimes('*', 3) === '***');

repeatStringNumTimes("abc", 3) يجب أن ينتج المقطع abcabcabc.

assert(repeatStringNumTimes('abc', 3) === 'abcabcabc');

repeatStringNumTimes("abc", 4) يجب أن ينتج المقطع abcabcabcabc.

assert(repeatStringNumTimes('abc', 4) === 'abcabcabcabc');

repeatStringNumTimes("abc", 1) يجب أن ينتج المقطع abc.

assert(repeatStringNumTimes('abc', 1) === 'abc');

repeatStringNumTimes("*", 8) يجب أن ينتج المقطع ********.

assert(repeatStringNumTimes('*', 8) === '********');

repeatStringNumTimes("abc", -2) يجب أن ينتج مقطع فارغة ("").

assert(repeatStringNumTimes('abc', -2) === '');

لا ينبغي استخدام الوظيفة repeat() المدمجة.

assert(!/\.repeat/g.test(code));

repeatStringNumTimes("abc", 0) يجب أن ينتج "".

assert(repeatStringNumTimes('abc', 0) === '');

--seed--

--seed-contents--

function repeatStringNumTimes(str, num) {
  return str;
}

repeatStringNumTimes("abc", 3);

--solutions--

function repeatStringNumTimes(str, num) {
  if (num < 1) return '';
  return num === 1 ? str : str + repeatStringNumTimes(str, num-1);
}

repeatStringNumTimes("abc", 3);