[ ط؛ظٹط± ط°ظ„ظƒ ] [king of the algorithms] ط³ظ„ط³ظ„ط© ظ…ظ„ظƒ ط§ظ„ط®ظˆط§ط±ط²ظ…ظٹط§طھ ----- ط§ظ„ط¹ط¯ط¯ 5
بسم الله الرحمن الرحيم
السلام عليكم ورحمة وبركاته
King Of The Algorithms
King Of The Algorithms
King Of The Algorithms
King Of The Algorithms
سلسلة ملك الخوارزميات
( العدد 5 )
- نبذة عن السلسلة:
سلسلة ملك الخوارزميات هي عبارة عن فكرة خطرت على بالي منذ فترة ليست بالقليلة، حيث كنت ادرس مفصل مساق متخصص بالخوارزميات Algorithms ، وكان الاستاذ في البداية يطلب منا مشاريع، للوهلة الأولى تبدو غاية في الصعوبة، وهي كذلك، لكن بعد تأمل قد يصل ساعات... او أيام، نتوصل الى فكرة هذه الخوارزمية، وبعد ذلك يبدا التطبيق، لذلك احببت ان نقوم بتعاون من الاعضاء الكرام في الركن بعمل سلسلة يطلب فيها في كل عدد خوارزمية لاداء عمل معين، ويقوم كل عضو بطرح الخوارزمية التي توصل اليها، ثم يوضع الحل، ويتم شرح طريقةه بالتفصيل ، ويتم بيان الاعضاء الذين قاموا بحل صحيح للخوارزمية
لماذا هذه السلسة؟
صحيح ان منتديات ديزاد باتنة هو معهد تطويري لمواقع الانترنت بالدرجة الاولى، ومن الطبيعي ان ينعكس ذلك على ركن لغات البرمجة، فنجده في 95% من مواضيعه متحيز الى جهة البرمجة بلغة php، لكن في الحقيقة اتمنى لو نرى نشاط في القسم للغات اخرى، مثل JAVA , C والمزيد من اللغات القيمة السهلة، لذلك فبرمجة الويب تفتقر الى عدد كبير من الخوارزميات، التي هي في برمجيات اخرى قد تكون ذات الصدارة من حيث الدراسة والتناول، كموضوع ال Trees، اكيد ان لا احد يفكر بتمثيل كلاس الاشجار بالphp ، ولكن من المؤكد ان الكثير منهم فكر ومثله بالJAVA من اجل ذلك، أتت فكرة هذه السلسلة، حيث ان الخوارزميات المطلوبة لن تكون فقط في مجال برمجة الويب، وانما ستطال جوانب اخرى.
ومن أجل تعزيز المشاركة، يستطيع المشارك ان يشارك عن طريق كود code في احد اللغات التالية:C++
C
PHP
vb.net
JAVA
او حتى عن طريق خطوات اجرائية psuedo code
- آلية العمل:
سأقوم ان شاء الله ـ في حال لاقت الفكرة اقبالاً ورواجا لدى الأعضاء ـ بوضع طلب خوارزمية جديدة كل فترة معينة، يتم اعطاء المجال للاعضاء بطرح افكارهم ونتائج عملهم، ثم اقوم بحلها مع تفصيل الحل، ومن ثم طلب خوارزمية جديدة في موضوع جديد
تفاصيل العدد 5
بداية اعتذر عن التأخر في العدد الخامس لاني انشغلت شوي
المهم انه نكمل السلسلة
في هذا العدد تعمدت اني اسهل الخوارزمية بناء على طلب بعض الاعضاء
ولان الكثير تصعبوا جدا من الخوارزمية الماضية
فبالتالي التسهيل سيجعل عدد اكبر من الاعضاء من المشاركين
وهذا شي مهم حتى نكمل السلسلة
المهم
في هذا العدد المطلوب هو التالي
المطلوب بناء فنكشن اسمها getDate
عندما نطلبها تعيد لنا التاريخ لليوم على النحو التالي
مثلا اليوم لازم تعطينا
12-6-2014
الحل يجب ان يعتمد على اساس الفنكشن mktime() فقط
يعني كانها محاكاة للفنكشن date بشكل جزئي
لكن ما الشروط الواجب اتباعها حتى يقبل الحل
- ان لا يستخدم اي دالة جاهزة بداخل الفنكشن باستثناء الفنكشن mktime();
ان لا يتعدى وقت تنفيذ الخوارزمية Constant time اي انه يمنع استخدام اي حلقة تكرار داخل الفنكشن الفنكشن لا تاخذ اي بارمتر وترجع سترنغ يحتوي على التاريخ
وفقا للشروط التالية
![]()
خلو الكود code المسلم من اي syntax error.
ان يكون الكود code ضمن احد اللغات المذكورة اعلاه.
ان يكون الكود code موثقا جيدا عن طريق التعليقات.
ان يكون الكود code من كتابتك، صحيح اني لن استطيع ان امنعك ان تبحث عنه في الانترنت وان تجده جاهزا، لكنني أتأمل ان نعمل معا بجد وبأمانة ومصداقية
وعلى الله الاتكال
في انتظاركم
اخوكم
مهند أبو شمسية
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى©