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

مشاهدة النسخة كاملة : return


ثامر أبو بلقيس
01-07-2013, 03:44 PM
السلام عليكم

ممكن شرح ممل و تفصيلي حول القيمة المخزنة return

سلامي .

عبود عبود
03-07-2013, 01:03 PM
سوف أجاوب إن شاء الله اليوم على هذا السؤال ....... إنتظرنى ...... فقط سوف آخذ قسطا من الراحة دلوقتى :abc_065:

ثامر أبو بلقيس
03-07-2013, 01:13 PM
ستكون خدمة كبيرة لي و لزملائي لأن الأستاذ كريم لم يفصّل فيها
كثيرا لكن بأمثالك من المخلصين و محبي ايصال المعلومة
فلست قلقا ... خذ كامل وقتك و لك كل الأعذار و إن شاء الله كل خير

عبود عبود
03-07-2013, 03:56 PM
ستكون خدمة كبيرة لي و لزملائي لأن الأستاذ كريم لم يفصّل فيها
كثيرا لكن بأمثالك من المخلصين و محبي ايصال المعلومة
فلست قلقا ... خذ كامل وقتك و لك كل الأعذار و إن شاء الله كل خير

هى أبسط مما تتصور لذلك لا تجد إشارة لها أو تسليط للضوء عليها و كما قلت لك على الخاص أنها تعتبر كلمة محجوزة خاصة و تستخدم مع الوظائف Functions ووظيفتها هى إرجاع قيمة معينة أو إجراء معين أو نص أو قيمة بولينية أو ....... إلخ كل هذا يمكن أن يتم إرجاعة إلى الدالة أو الوظيفة التى سوف تنفذ بمعنى لديك الوظيفة التالية كوظيفة مبسطة :

--
function abood ()
a=5;
b=6;
return a+b
end

هنا فى الوظيفة السابقة قمت بعمل دالة إسمها عبود "abood" مثلا
و اعطيت قيمة لـــ a و أعطيت قيمة لـــ b
ثم قلت للدالة أن ترجع قيمتها أو نتيجة تنفيذ هذة الدالة وذلك عندما كتبت الكلمة المحجوزة return كما أشرت لها سابقا فى الشرح
فقمت بكتابة بعدها a+b كما هو موضح بالكود
إذن كما تعلم أن لإستدعاء هذة الدالة يتم هكذا :
abood()

ماذا يا ترى يكون نتيجة تنفيذ الدالة ؟
سوف يكون نتيجة تنفيذها هو عبارة عن القيمة a+b أى أن النتيجة النهائية التى سوف تخزن فى هذة الدالة هو 11 طبقا لمجموع العنصر أو المتغير a مع العنصر أو المتغير b و اللذين قمت بتحديدهما مسبقا
إذن عادت هذة القيمة إلى النتيجة النهائية و هنا أركز على كلمة النتيجة النهائية للدالة وذلك بفضل إستخدام الكلمة المحجوزة return :abc_065:

:abc_087: أوعى تقولى أنة لا تظهر نتائج عند تنفيذ الدالة :abc_086: لأن بالطبع سوف أقول لك نعم لن تظهر لأنك قمت بتنفيذ الدالة و لم تستعلم عن نتيجتها على سبيل المثال ممكن تستخدم ديالوج ماسج لعرض نتيجة تنفيذ الدالة كما هو موضح بالكود النهائى :

--
function abood ()
a=5;
b=6;
return a+b
end

Dialog.Message("Notice", abood (), MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);


:abc_085: طيب و ماذا عن القيم البولينية أو النصية أو غيرها ؟؟؟؟؟
أكيد سوف تكون النتيجة كمثل ما سبق بالتوضيح . :abc_065:

إذا كان لديك تعليق قل ما لديك فسوف أفيدك بما لدى من علم قليل

http://imageshack.us/a/img823/1600/14wzrwkjpg.gif
لا أتمنى أن يكون الكلام غير واضح

بالتوفيق

ثامر أبو بلقيس
03-07-2013, 04:41 PM
جربت من بعيد قبل الدخول في استغلال المعلومة
لأول مرة أتعامل معها بطريقة سليمة لك مني كل التقدير
أي مطالب بخصوص هذه القيمة سأطرحها اختصرت و أفدت :abc_022:

ثامر أبو بلقيس
03-07-2013, 06:55 PM
السلام عليكم لعلي ساختصر
كل مايدور في ذهني في تحويل هذه الدالة
لأنها تشمل جل تساؤلاتي أرجو التعامل معها
ولك كل الوقت
T1 =Input.GetText("Input1");
T2 =Input.GetText("Input2");
T3 =Input.GetText("Input3");

---------- حساب دلتا -------
X = (T2^2)-(4*T1*T3)
Input.SetText("Input4", X);
----------------------=======----------

--------------------------------
--------------------------------
--------- و س2حساب س1 -------------
W= Math.Sqrt(X);
R4=(T2*-1)+W
R=(T2*-1)-W
R2 =2*T1
R3 = R/R2
R5 = R4/R2
Input.SetText("Input5", R3);
-------------- حساب س2 ----------------
Input.SetText("Input6", R5);
--------
if X < 0 then
Label.SetText("Label6", "!! المعادلة ليست لها حلول ");
Input.SetText("Input5", "");
Input.SetText("Input6", "");
elseif X == 0 then
Label.SetText("Label6", "!! المعادلة لها حل مضاعف ");
elseif X > 0 then
Label.SetText("Label6", "!! المعادلة لها حلان ");

end

عبود عبود
03-07-2013, 07:17 PM
وضح ماذا تريد فأنت وضعت مجموعة من الأكواد فقط و لم تقل شيئ :abc_065:

ثامر أبو بلقيس
03-07-2013, 08:14 PM
السلام عليكم

هل من اقتراح لاختصار هذه الاكواد قبل ضغطه للتدرب على صناعة البليجين
function dala_F (X,T1,T2,T3)
X = (T2^2)-(4*T1*T3) return X
end
function dala_R (X,T1,T2,T3)
X = (T2^2)-(4*T1*T3)
if X > 0 then
X = (T2^2)-(4*T1*T3)
W= Math.Sqrt(X);
R4=(T2*-1)+W
R=(T2*-1)-W
R2 =2*T1
R3 = R/R2
R5 = R4/R2
R3 = R/R2
return R3
elseif X < 0 then return "Il n'y a pas de solutions "
end
end
function dala_y (X,T1,T2,T3)
X = (T2^2)-(4*T1*T3)
if X > 0 then
X = (T2^2)-(4*T1*T3)
W= Math.Sqrt(X);
R4=(T2*-1)+W
R=(T2*-1)-W
R2 =2*T1
R3 = R/R2
R5 = R4/R2
R3 = R/R2
return R5
elseif X < 0 then return "Il n'y a pas de solutions "
end
end



السلام عليكم