المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : تكرار مصفوفة بعدد مرات اختياري


ثامر أبو بلقيس
19-12-2014, 09:35 PM
السلام عليكم ورحمة الله وبركاته

اليوم عندك مصفوفة ولتكن :
{ 1, 2, 3 }

تريد تكرارها بعدد معين من المرات

لاحظ هذا الكود :
x = setmetatable({ 1, 2, 3 }, {
__mul = function(x, y)
b = {}
for i = 1, y do
for _, v in ipairs(x) do table.insert(b, v) end
end
return b
end
})
my_table={}
x = x * 3
for r ,x in pairs(b) do
Table.Insert(my_table, r, x);
result = Table.Concat(my_table, ",", 1, TABLE_ALL);
end

Dialog.Message("", "{"..result .."}" );

ستتكرر المصفوفة المعلن عنها ثلاث مرات
و الجزئية
x = x * 3
من خلالها تحدد عدد المرات التي تريدها بالضرب في قيمة x

موفق:abc_138:

ثامر أبو بلقيس
19-12-2014, 11:09 PM
وهذا حل من طرف الاستاذ عبود أروع و أجمل بكثير
مما طرح
b ={ 1, 2, 3 }
my_table={}
i=0;
m=3;
repeat
for x=1,#b do
Table.Insert(my_table, x, b[x]);
result = Table.Concat(my_table, ",", 1, TABLE_ALL);
end
i=i+1;
until (i==m)
Dialog.Message("Notice", "{"..result .."}");

حيث m معبرة عن عدد مرات التكرار التي نريدها

جزاك الله خيرا أستاذ :abc_138:

عبود عبود
19-12-2014, 11:33 PM
جزاك الله خير أخى

موفق دائما بإذن الله ونتمنى لك دوام الصحة والعافية

:abc_152:

أبو يوسف
20-12-2014, 05:53 PM
جزاك الله خيرا أخانا أبا بلقيس :abc_152:

azizsoft
21-12-2014, 04:06 PM
بسم الله الرحمن الرحيم

جزاكم الله خيرا

أستاذ أبو بلقيس ونفع بكم
:abc_022:

أبو فارس
24-12-2014, 05:00 PM
خالص الشكر والامتنان على ما بذلتموه من جهود مباركة


وفقك الله وأثابك ونفع بك