19-12-16, 10:15 AM
صراحة بحثت كثيرا عن قانون الرياضيات
وهذا كان اجتهادي
واذا كان الحل مقبول ارسل المشروع
وهذا كان اجتهادي
واذا كان الحل مقبول ارسل المشروع
|
[مسابقة الخوارزمية 3] - الجولة الاولى
|
|
19-12-16, 10:15 AM
صراحة بحثت كثيرا عن قانون الرياضيات
وهذا كان اجتهادي واذا كان الحل مقبول ارسل المشروع تم الشكر بواسطة: الشاكي لله
19-12-16, 10:29 AM
السلام عليكم
ان شاء الله هذه المرة يكون البرنامج صحيح
اللهم لا علم لنا إلا ما علمتنا
http://www.facebook.com/samira.abdalla.980 تم الشكر بواسطة: الشاكي لله
19-12-16, 11:20 AM
(19-12-16, 10:15 AM)عبدالله الصافي كتب : صراحة بحثت كثيرا عن قانون الرياضيات توجد نسبة خطأ صغيرة عند التجريب على R: 1001 A: -500.5, 866.891 B: 707.813, 707.813 يعطي 1311.57 المفروض 1310.31 وكذلك لبعض القيم الكبيرة التي جربتها / الفرق يظهر في القيم الكبيرة ربما قيمة PI ليست دقيقة ؟
19-12-16, 11:22 AM
تم الشكر بواسطة: الشاكي لله
19-12-16, 11:27 AM
تم الشكر بواسطة: عبدالله الصافي
19-12-16, 12:26 PM
(آخر تعديل لهذه المشاركة : 20-12-16, 09:10 PM {2} بواسطة الشاكي لله.)
انتهت الجولة الاولى
وترتيب المتسابقين هو :
8 نقاط لـ Fantastico
6 نقاط لـ noway
4 نقاط لـ samira20
2 نقاط لـ عبدالله الصافي
تنفيذ الخوارزمية
هناك بالطبع عدة طرق لتنفيذ الخوارزمية ، وان لم اكن اعرف غير هذه الطريقة والتي اعتبرها اقصر طريق لإيجاد المطلوب الطريقة هي باستعمال Tan Inverse ، فكما نعلم ان مقلوب الTan يرجع لنا الزاوية بين نقطتين على نفس الخط ، وهي دالة من اهم الدوال في عالم البرمجة فتستعمل كثيرا جدا في عالم برمجة الGraphics او الالعاب (مثل العاب القذائف والكرة) . فنقوم بإيجاد الزوايا لكل نقطة على حدا : نقطة A : نقطة B : ^^ هنا ظهرت الكارثة لايمكننا ايجاد زاوية النقطة B لان نعلم رياضيا انه لا يمكن قسمة عدد على صفر .اذن مالحال ؟ لهذه المصيبة ، ابتكر المطورون دالة بديلة باسم Math.Atan2 وهي دالة موجودة في جميع لغات البرمجة وفي كثير من الاحيان تستخدم بدل Math.Atan التقليدية وذلك بسبب المشكلة المذكورة مسبقا ، وatan2 أخذ 2 بارميتار هما y و x وذلك لتقوم هي بالتكفل في موضوع قسمة العددين وان كان المجاور صفر ، فلا يوجد لديها مشكلة ولكن atan2 على عكس atan التقليدية ، تقوم بجلب الزاوية دائما من الربع الايمن للدائرة ، كما هو موضح : اذن نقوم بجلب الزاوية الخاصة بالنقطة A ثم نقوم بجلب الزاوية للنقطة B ثم نوجد الفرق ، وبتأكيد تعرفون جميعا ان ايجاد الفرق يعني انقاص احد العددين من الاخر ، فننقص B من A وبالتالي تظهر لنا الزاوية بين النقطتين A و B ![]() والناتج التي ترجعه الدالة Math.Atan2 تكون بالـ Radian بين 180 و -180 وقبل ان تعوض في المعادلة الشهيرة لإيجاد طول القوس : S = r θ يجب عليك التخلص من السالب التي ترجعه تلك الدالة ولكن يفضل تحويل الـ Radian الى Degree ثم التخلص من السالب فذلك اسهل .. وبالتالي الكود النهائي :- تحميل المشروع : https://drive.google.com/open?id=0B7P09J...zByWm9VOU0 تم تم الشكر بواسطة: عبدالله الصافي , abulayth , السندبااد , sendbad100 , sendbad100 , Fantastico , Fantastico , ابراهيم النعيمي , samira20
20-12-16, 06:58 AM
جزاكم الله خيرا
كيف ارسل السورس الى المشرف ؟
اللهم لا علم لنا إلا ما علمتنا
http://www.facebook.com/samira.abdalla.980
20-12-16, 07:18 AM
(20-12-16, 06:58 AM)samira20 كتب : جزاكم الله خيرا ادخل على هذا الرابط أكتب لـ abulayth رسالة خاصة . اكتبي العنوان والرسالة -يجب ان تحتوي على رابط السورس- ثم (ارسال)
20-12-16, 01:05 PM
السلام عليكم ورحمة الله وبركاته
الف الف مبروك للفائزين وحظا اوفر لمن لم يحالفهم الحظ في الجولات القادمة اتمنى من جميع المشاركين الراغبين في اتمام المسابقة والذين توصلوا الى حلول صحيحة ارفاق هذه الحلول هنا لكي يتسنى لهم المشاركة في كامل المسابقة لان من شروط المسابقة ان يقوم المتسابق بحل 4 اسئلة او اكثر بشكل صحيح اتمنى لكم التوفيق (( يَا أَيَّتُهَا النَّفْسُ الْمُطْمَئِنَّةُ ارْجِعِي إِلَى رَبِّكِ رَاضِيَةً مَرْضِيَّةً فَادْخُلِي فِي عِبَادِي وَادْخُلِي جَنَّتِي ))
تم الشكر بواسطة: الشاكي لله , الشاكي لله , السندبااد , samira20
|
|
|