Jump to content

استفسارات عن البرمجة


Recommended Posts

طبعا مهم جدا وخاصه للجداول ,

فـ لو بتجيب قيمه محدده من الجدول راح تحتاج اللوب, واذا تبي تجيب كل القيم برضه تحتاج اللوب,

فـ اللوب يمر على محتويات الوظيفه الي تحطها ,

Link to comment
(Loop) هذا يسمى لوب

وهذا اللوب يمر على جميع محتويات الوظيفه الي حطيتها, مثال

for i = 1,3 do error(i) end 
  
-- مثال آخر للجدول, 
  
table_ = {'A','B','C'} 
  
for k,v in ipairs(table_) do error(v[1]) 
 -- A  
  

Lua وتقدر تقرأ عنه في

http://lua-users.org/wiki/ForTutorial

كنت بستفسر عن هذا الشيء

بس مكتوب

For K,v

اش معناها واحيانا يجي ووش الفرق بينهم

For i,v

وباخر الكود مكتوب

(v[1])

اش معناها كمان

Link to comment

يسمونها الدوارة لأنها تدور على محتويات الدالة for بالنسبه لـ

for k,v

k = المفتاح

v = القيمه

تقدر تخليها اي شيء , k,v ومو شرط تكون

test = {'Hello','world'} 
  
for k,v in ipairs ( test ) 
    outputChatBox('Keys : '..k..' 2 value '..v[2]) 
    -- v = hello and world 
    -- v[1] = hello 
    -- v[2] = world 
end 
  

هذا انا حددت وش ابي بالضبط , وهي القيمه الثانيه v[2] بالنسبه لـ

Link to comment
السلام عليكم

if source

تستخدم لزر والصورة

ولا بس الزر

هذي تستخدم للتحق من السورس حق الأفنت اللي تستخدمه فـ كودكـ .. يعني بـ اللعبة لكل حدث سورس

يعني مثلأ .. سورس حدث دخول الماركر هو الماركر اللي دخله الألمنت .. حدث ضغط اللاعب على زر هو الزر اللي انضغط

guiRoot وتقدر ما تضيف هذا الشرط .. بحيث انك تحط سورس الافنت بـ نفس الحدث بدأل

اعتقد مفهومة وما يبيلها مثال .

Link to comment

تمام مفهومه

يالغلا

بس انا قصدي

يوم ابستخدم زر بوظيفة معينة

احتاج اني استخدم

if source = button

انا سؤال على ينففع اني استخدم صورة بدال الزر ؟

واذا ماينفع وش المستخدم لصورة لجعلها تفعل وظيفه معينة

Link to comment
  • 2 weeks later...
ابي شرح ل

break

لانها شفت موضوع ذا بست لحس مخي

+

وش فايدتة

اعرف انها توقف الوظيفه ذا اللي فهمته

هي توقف اللوب ,,

هذا مثآآل يجيب أسماء 3 فقط من اللاعبين ,, وإذا كان أكثر راح يوقف اللوب بإستخدام دالة break

for i, p in ipairs ( getElementsByType ( "player" ) ) do 
    if i > 3 then break end 
        outputChatBox ( getPlayerName ( p ) ); 
end 

Edited by Guest
Link to comment

اعوذ بالله .

-__- فين طارت الردود .. ع الاقل خلي الردود حقنا .. بعد كل ذا التعب

هي توقف اللوب ,,

هذا مثآآل يجيب أسماء 3 فقط من اللاعبين ,, وإذا كان أكثر راح يوقف اللوب بإستخدام دالة break

for i, p in ipairs ( getElementsByType ( "player" ) ) do 
    if i > 3 then break end 
        outputChatBox ( getPlayerName ( p ) ); 
    end 
end 

ملأحظة : عندك اند زايدةة ذذ

Edited by Guest
Link to comment
ipairs

tonumber

i, v

ياليت وظايفهم ^

ipairs > وظيفتها جلب جميع عناصر التيبل المحدد

tonumber > فـ هي سلسلة من الارقام فقط .. لو تبي تسوي ايديت ما يقبل الا ارقام فـ تستخدم هذي كـ مثال ذذ

i, v ؟؟

ipairs ترا مو ضروري زي مو كاتب انت .. هذي تجي مع

ممكن تكون كذا .. :

for k, v in ipairs( table ) do 

k = المفاتيح

v = القيم

اي حروف تستخدمها نفس الشي .. المهم الـ اول حرف يكون المفاتيح والثاني القيم ولو حطيت اي حرف بدالهم عادي ذذ

Link to comment

ipairs - pairs - next = لجلب محتويات الجدول for تستخدم لجلب مع اللوب

^ بالعاميه تمر على كل الي داخل الجدول

for - while - do = هذي اعتقد يسمونها الدواره , يعني تدور على الشيء وترجع مره ثانيه تدور

ماهي معرفه بالاساس لكن اتوقع انك تقصد هذي i,v بالنسبه لـ

for i,v ...

i = يجيب لك كم عدد القيم داخل الجدول

v = يجيب لك القيم الي داخل الجدول

ومو شرط كتابتها مثل الي فوق تقدر تسويها كذا,

for key ,values...

او على كيفك ذذ

tonumber = تستخدم لتحول القيمه الى رقم بمعنى من ستنرق الى رقم وايضا تستخدم للتحقق ان الشيء المطلوب رقم وليس حرف

tonumber مثال على,

local word = 'Hello'  
  
if tonumber(word) then 
        outputChatBox('رقم') 
    else 
        outputChatBox('ليس رقما') 
end 

مثال على الجدول واللوب,

words = { 
    ['one'] = '1', 
    ['two'] = '2', 
    ['three'] = '3', 
} 
  
for key,value in pairs(words) do 
    outputChatBox(' * '..key..' : '..value) 
end 
--[[ 
* one : 1 
* two : 2 
* three : 3 
]] 

while مثال على,

  
local number = 5 
  
while ( number >= 1 ) do 
    number = number - 1 
        outputChatBox('* The number : ' .. number)  
end 
  
--[[ 
* The number : 4 
* The number : 3 
* The number : 2 
* The number : 1 
* The number : 0 
]] 
  

او تقدر تسوي كذا,

local number = 5 
  
repeat 
    number = number - 1 
        outputChatBox('* The number : ' .. number)  
until number < 1 
  
--[[ 
* The number : 4 
* The number : 3 
* The number : 2 
* The number : 1 
* The number : 0 
]] 

الحين عرفنا ان اللوب تقدر تستخدم الثلاث اشياء :

for - while - repeat until

اتمنى وصلت المعلومه :)

  • Like 1
Link to comment
  • 2 weeks later...

لها عدة استخدامات

إذا استخدمت في جدول

:على سبيل المثال

local t = { "test", "test1", "test2", "test3" } 
outputChatBox ( #t ) -- الاستنتاج: عدد المعلومات الموجودة داخل الجدول 

اذا استخدمت في سترنق

:على سبيل المثال

local s = "Hi" 
outputChatBox ( #s ) -- الاستنتاج: عدد الاحرف الموجودة داخل السترنق 

Link to comment
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...