![]() |
|
[تمرين] : عمل محاكاة للدالة rgb - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : تمارين دلفي وحلول (https://delphi4arab.net/forum/forumdisplay.php?fid=16) +--- الموضوع : [تمرين] : عمل محاكاة للدالة rgb (/showthread.php?tid=5172) |
[تمرين] : عمل محاكاة للدالة rgb - SMP3 - 30-04-2013 B.M.AbdelAziZ كتب :لم انتبه للشرط الاول بسبب السرعة...هذا حل أخر بوقت اقل من السابق! [COLOR="Red"]حل صحيح (منطقي) و مقبول أخي B.M.AbdelAziZ .. ![]() [/COLOR] تحليل على السريع : (حتى يفهم من يريد المشاركة معنا ) القيمة التي تعيدها RGB هي COLORREF (حجم 4 بايت ) .. لكن R+G+B لا يتعدى 3 بايت => البايت الرابع = 00 كود : 0B0000
+ 0G00
+ 0R
---------------------
= RGB(R,G,B)كود : result:=b*$10000 {Alloc 3 bytes}
+g*$100 {Alloc 2 bytes}
+r; {One byte }[تمرين] : عمل محاكاة للدالة rgb - SMP3 - 30-04-2013 virtual كتب :عفوا لم انتبه . جو العمل المتعب لم يترك لي مجال للتفكير نعم على مستوى البت الواحد بالفعل اجابة الاستاذ B.M.AbdelAziZ صحيحة 100% .. في انتظار اجابتك ... [تمرين] : عمل محاكاة للدالة rgb - ALmuhhnad - 01-05-2013 PHP كود : function MakeRGB(R,G,B : Byte):Cardinal ;السلام عليكم هذا حلي ... , انتظر التعليقات على الكود ( سرعة .. كفائة ... إلخ ) << إذا امكن وشكرا لك اخي المبرمج SMP3 على التمرين وتنشيط المخ/العقل [تمرين] : عمل محاكاة للدالة rgb - SMP3 - 01-05-2013 ALmuhhnad كتب :السلام عليكم [COLOR="Indigo"]شكرا على المشاركة اخي ALmuhhnad بالنسية للدالة MakeRGB التي كتبتها فهي خاطئة مع الأسف جرب : كود : a:= MakeRgb($10,$34,$50);
b:= Rgb($10,$34,$50);[/COLOR] حاول مرة أخرى .. [تمرين] : عمل محاكاة للدالة rgb - SMP3 - 01-05-2013 تذكر أخي المبرمج أن أعقد الأمور لا تتطلب أعقد الحلول لحلها !! لتسهيل التحدي : يمكن استخدام عدة طرق للقيام بحل التمرين (لقد قمت بحل التمرين باستخدام ثلاث طرق مختلفة) -استخدام المؤشرات -استخدام الأسمبلي - استخدام تعليمات لغة باسكال : + , - , * , div ... - استخدام ؟؟؟؟؟؟؟؟ (لن أذكره حتى لا أحرق الفكرة )[تمرين] : عمل محاكاة للدالة rgb - ALmuhhnad - 01-05-2013 PHP كود : function MakeRGB(R,G,B : Byte):Cardinal ;تصحيح .. إذا كان الامر بالاماكن فقط @@" [تمرين] : عمل محاكاة للدالة rgb - ALmuhhnad - 01-05-2013 هذه طريقة آخرى للدالة RGB PHP كود : function MakeRGB(R,G,B : Byte):Cardinal ;[تمرين] : عمل محاكاة للدالة rgb - SMP3 - 01-05-2013 ALmuhhnad كتب :هذه طريقة آخرى للدالة RGB [URL="http://www.delphi4arab.net/forum/showpost.php?p=41390&postcount=9"]سبقك اليها الأخ B.M.AbdelAziZ [/URL]
[تمرين] : عمل محاكاة للدالة rgb - ALmuhhnad - 01-05-2013 إقتباس :لم الحظ ان اخي المبرمج [ B.M.AbdelAziZ ] كتبها قبلي ... في الحقيقة كتبت الحل قبل ان انظر بالحلوول الأخرى هههههه ... هذه نفس الطريقة لكن بالأسمبلي : PHP كود : function MakeRGB(R,G,B : Byte):Cardinal ;[تمرين] : عمل محاكاة للدالة rgb - SMP3 - 01-05-2013 ALmuhhnad كتب : [COLOR="Navy"]آه لم أنتبه لهذا الرد .. حل صحيح و مقبول لكن لن ماذا عن الدالة GetBValue_T و الدالة GetٌRValue_T !!! -------------------------------- تعديل بسيط على الدالة : هكذا أفضل :[/COLOR] PHP كود : function MakeRGB(R,G,B : Byte):Cardinal ; |