الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

استفسار محير الكل بخصوص الخوارزميات

بدأه put down في 30 يونيو 2010 · 5 رد · 1,718 مشاهدة · في الرياضيات والخوارزميات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رمة الله تعالى و بركاته

سعدت كثيرا بوجود هذا المنتدى الرائعة الذي يهتم بالبرمجة ما أحلم بدراسته :) العام المقبل في الجامعة بحول الله

الكل يسمع عن الخوارزميات لكن عند بحثي على الشبكة لم اجد ذلك التعريف الذي يجعلك تعرف ما هي قبل دراستها و تعلمها

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

ثم .. ما الهدف من دراستها ان كانت لا تطبق مباشرة و لمذا هذا الهول في تعليمها لدى المعاهد العليا ..يعني أتعلم مباشرة الفيجوال بيسك رح أكون تطبيقي أكثر

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

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

نصيحة أكيدة عن تجربة ... حب التخصص الذي تنتج عنه ممارسة مستمرة + إرادة و همة عالية ... ستصل لأبعد الحدود في كل تخصص متعلق بالإعلام آلي

#2

اخي الفاضل: الخوارزمية بكل بساطة(وبالبلدي) هي خطة عمل او طريقة كتابة برنامج معين. الفرق بينها وبين اي خطة عمل اخرى انها قابلة للتطبيق على الحاسب. كيف ذلك ؟ على شكل برنامج يتم كتابته باحد لغات البرمجه.

مثال بسيط : عملية اعداد طبخة معينة هي عبارة عن خوارزميه (ولكنها قد لا تكون قابلة للتطبيق على الحاسب).

ما اهمية الخوارزميات :انها الخطوة الاساسية لكتابة البرنامج . مثلا اذا لم اعرف كيف يمكن ترتيب مجموعة اعداد فلن استطيع كتابة برنامج لترتيب الاعداد.

توجد المئات من لغات البرمجة ولكن توجد طريقة واحدة لكتابة الخوارزميات. لذلك اذا كنت ابرمج بلغة معينة ولم اجد البرنامج الذي اريده بهذه اللغة فالاسهل ان ابحث عن الخوارزمية الخاصة به (طبعا في حالة اني عجزت عن تصميم خوارزمية له).

تحويل الجمل المكتوبة في الخوارزمية الى لغة برمجة معينة يتم بسهولة وبخطوات بسيطة، خصوصا اذا كانت الخوارزمية تعطي كل التفاصيل.

بالتوفيق.

تم تعديل هذه المشاركة بواسطة ibr_exn في 1 يوليو 2010 في 00:39

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#3

أخي للأسف لم تفدني بشيء مع احترامي لك .. يرجى التوضيح أكثر و اعادة قراءة الموضوع من فضلك تساؤلي أكبر من ذلك بكثير .. شكرا لعى المحاولة و جزاك الله الف خير :)

نصيحة أكيدة عن تجربة ... حب التخصص الذي تنتج عنه ممارسة مستمرة + إرادة و همة عالية ... ستصل لأبعد الحدود في كل تخصص متعلق بالإعلام آلي

#4

شكرا جزيلا أخي الكريم و برك الله فيك الآن اكتمل الرد نوعا ما .. و سؤالي هو .. مثلا اريدي تصميم برنامج افتح الفيجوال بيسك و اصممه و ابرمجه عادي جون اللجوء للخوارزميات اذن ما فائدتها

بالاضافة الى ذالك هل هي فعلا قابلة للترجمة و لا يمكن تطبيقها مباشرة لعى الحاسب .. :unsure:

نصيحة أكيدة عن تجربة ... حب التخصص الذي تنتج عنه ممارسة مستمرة + إرادة و همة عالية ... ستصل لأبعد الحدود في كل تخصص متعلق بالإعلام آلي

#5
اقتباس

مثلا اريدي تصميم برنامج افتح الفيجوال بيسك و اصممه و ابرمجه عادي جون اللجوء للخوارزميات اذن ما فائدتها

:)

حين تكون لديك مباراة مهمة في كرة السلة أو كرة القدم، أيهما أفضل، أن تأخذ مجموعة شباب من الشارع وتنزل إلى الملعب لتلعب، أم أن تخطط وتجهز بحيث:

1- تختار الأشخاص المناسبين لهذه العملية، وتعطي كل منهم موقعه، فاللاعب الذكي يلعب على خط الوسط، والسريع يلعب مهاجماً، والقوي يلعب مدافعاً، وهكذا.

2- تضع خطة لكيفية تقسيم الملعب وكيفية الهجوم والدفاع.

ففي الحالتين، تستطيع أن تلعب، لكن في الحالة الثانية، احتمال فوزك أكبر بكثير.

وهذه هي الخوارزمية، هي خطة العمل بكل بساطة، لتقوم بعمل شيء ما بنجاح، يجب أن تكون لديك خطة لعمله، بحيث يكون:

1- يقوم بحل المشكلة المطلوبة.

2- يحلها بكفاءة.

في المشكلات الصغيرة، قد تستطيع حلها مباشرة في لغة البرمجة، لكن في بعض المشكلات الكبيرة، ستحتاج إلى أن تمسك ورقة وقلماً وتخطط وتفكر.

بالطبع، يمكنك كتابة الخوارزمية بأي طريقة تحبها، يعني كلام عادي ليس إلا، لكن هناك طريقة موحدة تتبع عادة في كتابة الخوارزمية، لكي يفهمها كل من يقرؤها.

وفي بعض الأحيان، قد تتوصل لحل مشكلة ما مباشرة من خلال التوجه إلى فيجوال بيسك وكتابتها، لكنك قد تدرك أن هذه الطريقة بطيئة جداً، أو معقدة جداً، أو أنها تحتاج إلى القيام بعدد معين من العمليات، يزداد بنسبة كبيرة كلما زاد عدد البيانات التي يتم تنفيذ العمليات عليها، لذلك، ستجد أنك تحتاج إلى كتابة خوارزمية (طريقة) أخرى، لتكون أفضل من السابقة، وحينها لا بد لك من بعض المعرفة بعلم الخوارزميات لتستطيع القيام بذلك.

أنصحك في الخوارزميات بكتاب SAMS Teach Yourself Data Structures and Algorithms in 24 Hours.

لكنه يتطلب شيئاً من المعرفة بـC++.

كما أنه لا يكفي لوحده إن أردت أن تتوسع في العلم، لكنه بداية جيدة على ما أحسبه.

بالتوفيق

1

هذه الجملة خاطئة  :wacko: 


#6

اخي عبود .. أفدتني و اكدت معلوماتي شكرا بارك الله فيك .. زادك اله علما .. و أدخلك الجنة .. شكرا أخي :)

نصيحة أكيدة عن تجربة ... حب التخصص الذي تنتج عنه ممارسة مستمرة + إرادة و همة عالية ... ستصل لأبعد الحدود في كل تخصص متعلق بالإعلام آلي

مواضيع مشابهة