Unconfigured Ad Widget

تقليص

إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

لمن لم يعرف البايثون بعد،تعلم البايثون في أسبوعين من البداية إلى النهاية

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • #16
    شكرا طايع علي التثبيت
    مش بقولك انت حبيبي
    بلاد الكوارث
    حيث جميع الشعب وجلاديه يبحثون عن العقل والقلب والشجاعه المفقودين
    لكن للاسف لاوجود للساحر اوز
    وتنتهي القصه بفقد الحذاء الاحمر
    وتبقي اليس في بلاد الكوارث للابد

    مدونتي

    تعليق


    • #17
      السلام عليكم،
      أولا أريد أن أشكرك أخي طايع على التثبيت.
      ثانيا، نقطة لم يعترض عليها احد، و هي في المقدمة، في الحقيقة ان امنت بفكرة انك ستتعلم لغة برمجة دون معرفة اصلها، فلا اظن انك ستذهب بعيدا!!
      بالنسبة لدرس المتغيرات نسيت ان اقول انك لاتستطيع البدا بالارقام في التسمية، و لا استعمال احرف غير الانجليزية طبعا.
      على اية حال الملاحظة الاخيرة ان الامثلة في المنتدى تبدوا مشوهة،(كود الهتمل معطل لذلك لا استطيع تغيير تنسيق النص لليسار) لذا وضعت الدروس هنا batar.funpic.org/python.rar ، و هي معدة للتحميل بدون مشاكل،( ان لم تعجبكم هذه الطريقة بامكاننا الغاؤها و الرجوع لوضع كل الدروس في المنتدى)
      الملاحظة الثانية انني لم اتمكن للاسف الا من اضافة فصل واحد و هو عن العمليات الرياضية( ولم اتمه كاملا)، و السبب راجع لانقطاع التيار الكهربائي طوال يوم امس،لكن اعدكم باتمام الوحدة الاولى كاملة بفصولها التسعة هذا الاسبوع،
      ان رايتم انني اطيل في الشرح، ارجوا اطلاعي، فكلما نقصت عدد الاحرف التي اكتبها بالنسبة لي كلما كنت اسرع في التحرير
      دراسة ممتعة.
      سبحان الله و بحمده، سبحان الله العظيم
      "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
      ^ المعرفة الحقة، هي تلك التي نتقاسمها^
      جميعا نحو الأفق...... btr.max@gmail.com

      تعليق


      • #18
        ياااااااااا
        شكرا جزيلا لك أخي batar على الموضوع
        موضوع فعلا مهم و ليس فقط للبلندريين...هو أيضا مهم لكل البرامج الآن!
        و هذا مثال بسيط
        http://www.nextlimit.com/nlscript/
        بعض الدروس
        http://abdelouahab.4shared.com

        .... à la mémoire de Kazouz

        تعليق


        • #19
          5 نجوم
          اخي بتار
          تم حل المشكله بخصوص الكود بشكل جزئي في موضوع سايفر لنفس الموضوع
          اتمني التعاون من الجميع لتخطي هذه المرحله
          شكرا علي الجهود الواضحه
          بلاد الكوارث
          حيث جميع الشعب وجلاديه يبحثون عن العقل والقلب والشجاعه المفقودين
          لكن للاسف لاوجود للساحر اوز
          وتنتهي القصه بفقد الحذاء الاحمر
          وتبقي اليس في بلاد الكوارث للابد

          مدونتي

          تعليق


          • #20
            أخي بتر مشكور على الدرس الجديــد..

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

            وأشكرك مرة أخرى ..

            تعليق


            • #21
              اخي نجم، لا ادري الخطا الذي تواجهه، لكني حملت الملف بنفسي و هو يعمل، على اية حال لقد حملت ملف جديد على نفس الرابط(حاول استخدام احدث نسخة من الوينرار)، و هو اصلا لمن يواجه مشكلة في شكل الكود، او يرغب في تنقل افضل بين الدروس، انصح بتحميل الملف لكني مع ذلك ساضع كل الدروس في المنتدى، و من يواجه مشكلة مع الكود يقوم بنسخه ثم لصقه في برنامج نصي و تغيير التنسيق الي اليسار،
              بالنسبة للدروس السابقة راجعتها و وجدت انني نسيت بعض الاشياء التي يجب ان تذكر من البداية، لذلك قمت بتعديلها
              بالنسبة للامثلة لابد من تنفيذها ، ان كان هناك من عنده سؤال او يريد ان اقوم بتصحيح البرامج التي صنعها و اقومها له(طبقا للدروس) ، فمرحبا به وليضعها في المنتذى
              سبحان الله و بحمده، سبحان الله العظيم
              "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
              ^ المعرفة الحقة، هي تلك التي نتقاسمها^
              جميعا نحو الأفق...... btr.max@gmail.com

              تعليق


              • #22
                الوحدة الأولى: الفصل الثالث:العمليات الرياضية

                الدرس الأول : العمليات الحسابية

                من المفترض انك متآلف تماما مع عمليات الضرب و القسمة و الجمع و الطرح،فهي شديدة الاستعمال في الرياضيات و العياة اليومية بشكل عام.و في هذا الدرس سنتطرق إلى كيفية استعمال هذه العمليات في لغة البايثون.
                في الحقيقة ليس هناك أمر جديد،و هذه العمليات كما في الحياة اليومية و جميع لغات البرمجة عالية المستوى (أنا اعتبر كافة اللغات باستثناء الاسمبلي و لغة الالة عالية المستوى) تتم مثلا على الشكل التالي: 4*2-9/7 ، أما من ناحية الأسبقية فالأقواس دائما لها الأسبقية في التنفيذ، يليها الأس ف عملية الضرب و القسمة ثم الجمع و الطرح ، اما ان كانت العمليات من نفس الدرجة (الضرب و القسمة مثلا) فيثم البدا بالتي في اليسار ثم اليمين.دعنا نعطي مثالا على ذلك:

                print 4+3*2/3 # النتيجة 6
                print (4+3)*2/3 # النتيجة 4
                print (4+3)*(2/3) # النتيجة 0
                لاحظ أن النتائج مختلفة، و ذلك راجع لاختلاف الأسبقية كما قلنا سابقا،لكن الملاحظة التي ستلاحظها أيضا إن طبقت المثال ( حاول دائما تطبيق الامثلة ) أن النتيجة في المثال ما قبل الأخير تقريبية فقط، وفي الأخير منعدمة، أما السبب فهو أن مفسر البايثون يظننا نريد نتيجة تكون فيها الأعداد صحيحة فقط، و بما انه يقسم العمليات التي نعطيها له إلى عمليات مفردة ، فانه يعطي دائما تقريب صحيح لكل منها، أما إذا أردت منه أن يعطيك نتيجة دقيقة ( لاحظ ان المشكل يحدث في القسمة فقط) فاجعل العدد في المقام عددا مزدوجا بإضافة النقطة العائمة و الصفر طبعا، و منه يصبح المثال:
                print 4+3*2/3.0 # النتيجة 6.0
                print (4+3)*2/3 # النتيجة 4.66666666667
                print (4+3)*(2/3) # النتيجة 4.66666666667
                بإمكانك انجاز هذه العمليات بنفس الطريقة على المتغيرات العددية كذلك:
                a=2 ;b=25.0 ;c=55.325 ;d=33.2
                print a*b
                print a/b
                print a+b
                print a-b
                print (a*b/c)+d-a
                • حساب باقي القسمة:
                بإمكانك حساب باقي القسمة دون الحاجة إليها عبر المعامل % ، إليك مثالا:
                print 20%17 # سيطبع النتيجة 3، و هو باقي القسمة
                • الأس:
                بالتأكيد أنت تعرف العملية، ولابد انك ستحتاجها بعض الأحيان في برامجك، إذن ابشر أن البايثون يدعمهما كذلك دون استيراد، لكن تتم فيه كالتالي:
                5 أس 3 تكتب على الشكل التالي:
                5**3 # نجمة تدل على الضرب و نجمتان على الأس
                و بإمكانك انجاز عمليتا الضرب و الجمع على المتغيرات الحرفية فقط دون العمليات الأخرى، ولكن هناك اختلاف، فالضرب يعتبر هنا بمثابة تكرار، و الجمع بمثابة إضافة، انظر المثال:
                • الضرب: تكرار
                a,b,c,t='batar','max','88',2
                print a*3 #batarbatarbatar النتيجة
                print b*t #max max النتيجة
                print c*a # النتيجة حصول خطا لان المتغيرين كلاهما حرفي، و بالتالي نستطيع استعمال متغير حرفي واحد مضروب في عدد أو متغير رقمي فقط
                • الجمع: إضافة
                a='batar' ; b='max'
                print a+' '+b # batar max
                print a+2*b # batar maxmax
                print a+5 # حصول خطا، لا يمكن إضافة متغير رقمي إلى متغير حرفي
                ملاحظة: إذا أردنا طباعة متغير غير حرفي قبله أو بعده أو محاط بقيم حرفية، الطريقة كما في المثال التالي :
                a=7
                print 'la valeur de a est',a,',voila c\'est clair'
                انتبه:
                لا يمكنك أن تضع على يسار علامة تساوي أو العلامات في الدرس الموالي إلا المتغير الذي سيطرا عليه التغيير، احذر أن تضع شيئا أخر، العلامة هنا ليست علامة تساوي التي تستعملها في الرياضيات، بل علامة يستعملها البايثون في تعديل المتغيرات !!

                الدرس الثاني: التعديل في قيمة متغير بفضل العمليات الحسابية:

                • الجمع :
                لإضافة قيمة عددية أو حرفية إلى متغير عددي أو حرفي على التوالي، ننهج إحدى الطرق التالية:

                a=5 ;a=a+2 # أضفنا الرقم 2 إلى قيمة المتغير ،فتصبح القيمة الجديدة للمتغير هي 7
                a=5 ;a+=2 # نفس المهمة، لكن بطريقة أسهل
                a='bon' ;a=a+'jour' #bonjour النتيجة
                a='bon' ;a+='jour' #bonjour النتيجة
                a='bon' ;a+=2*'jour' #bonjourjour النتيجة
                لاحظ أن السطر الثاني أسهل وأسرع في البرمجة، و ستعتاد عليه في جميع اللغات بنات السي
                • الطرح :
                فقط تستعمل للمتغيرات العددية،طريقتين كذالك:
                a=89 ;a=a-9 # النتيجة 80
                a=89 ;a-=9 # النتيجة 80،لكن بطريقة اسهل
                • الضرب :
                بالنسبة للمتغيرات العددية :
                a=4 ;a=a*5 # النتيجة هي 20
                a=4 ;a*=5 # النتيجة 20، لكن بطريقة أسهل
                بالنسبة للمتغيرات الحرفية، فهو بمثابة تكرار كذلك:
                a='batar' ;a=a*4 #batarbatarbatarbatar النتيجة
                a='batar' ;a*=4 # نفس النتيجة، لكن بطريقة ابسط
                • القسمة :
                لا تصلح الا للمتغيرات الرقمية:
                a=10 ;a=a/2 # النتيجة 5
                a=10 ;a/=2 # النتيجة 5، لكن بطريقة أسهل
                لا تنس مضاعفة العدد للحصول على دقة اكبر
                • بامكانك تضمين المتغير باقي القسمة بين قيمته و عدد:
                a=8
                a%=3 ;print a # النتيجة هي الباقي 2
                • بإمكانك رفع a إلى أس بطريقة سهلة دون عناء كذلك:
                a=2
                a**=4 # القيمة الجديدة للمتغير ستصبح 2 أس 4

                الدرس الثالث: العمليات المنطقية

                الآن و قد انتهينا من المعاملات الحسابية،جاء دور المعاملات المنطقية، و في هذا الدرس سنتطرق إلى الأهمية القصوى التي تتميز بها هذه المعاملات،خاصة في تصميم الشروط و التكرارات، طبعا درس الشروط ما زال على الأبواب (بعد هذا الفصل مباشرة)، و لأن حقيقة العبارات دائما هي صح ( True ) أو خطا ( False )،وفي الحقيقة هي 0 ( 0=False ) أو 1 ( 1=True )، فسنكتفي في هذا الدرس بطباعة الحقيقة ، أو اللجوء إلى المتغيرات المنطقية (قيمتها دائما هي 0 أو 1 )، لنبدأ الدرس:
                • المعاملات <> و <= >= :
                من المفترض انك معتاد على هذه المعاملات ، فهي تستعمل بكثرة، لكن لنعطي مثالا عليها:
                Print 7<5 # False
                Print 2>=2 #True
                بإمكانك وضع حقيقة العبارة في متغير منطقي، مثال:
                a=5>=28 # العبارة خاطئة
                print a
                print type(a) # أضفت هذا السطر ليقول لك البايثون أن المتغير منطقي، تأكد بنفسك
                • علامة المساواة (==):
                لقد قمنا باستعمال علامة المساواة المفردة (=) في الدروس السابقة لإدخال قيمة معينة في متغير أو لتغييرها، و من المفترض انك لاحظت أنها لا تصلح للمقارنة أبدا،الآن لنأخذ نوعا جديدا من علامات المساواة، ألا و هي علامة المساواة المزدوجة (==)،(إن تعلمت الجافا سكربت أو البي اتش بي مسبقا فلها دور علامة المساواة الثلاثية و ليس المزدوجة لأن معنى هذه الأخيرة غير موجود للأسف في البايثون)،هذه العلامة تقارن قيمتين معينتين و ترجع صح إذا كانتا متساويتين من نفس النوع والقيمة خطا إذا كانتا غير ذلك.
                مثال:
                print 3==7 #false
                print 2==2 #true
                print 7=='7' #false
                • المعاملات != و <>
                ضد العلامة (==) في اللغات بنات السي هي ( !=) والى حد ما كذلك (<>) :

                مثال:

                print 2 !=7 #True
                print 5 !=5 #False
                print 8<>8 # False
                print 8<>2 #True
                كذلك للقيم الحرفية:
                print 'batar' !='batr' #True
                print 5 <>'batar' #True
                بالنسبة للفرق بين المعاملين: اكتشف بنفسك !
                • المعاملات: (AND ; OR ; NOT)
                تتيح لك هذه المعاملات تنفيذ سطور من الكود بعد التحقق من مجموعة من الشروط، و هي كالتالي:
                • and : و نظيره &، يقوم هذا المعامل بالتاكد من أن جميع الشروط صحيحة ليرجع القيمة 1،أما إن لم يتحقق احد الشروط أو كلها فانه يرجع القيمة 0. لاحظ المثال:
                print (5==2) and (7<10) #False
                print ('khalid' !=95)&(7>=5) # True
                • or : و نظيره | و هو يرجع القيمة المنطقية 1 إذا تحقق احد الشروط على الأقل، و القيمة 0 إذا لم يتحقق أي شرط، و المثال التالي يوضح ذاك:
                print (8==8)or(5<2)or(8==10) #True
                print ('o'<>'r')|(8==7) #True
                print (7==2)|(8<1) #False
                - ملاحظة:
                قد لا تكون بتلك الأهمية، و لكن تذكر دائما أن المعاملات & و | لها الأسبقية على and و or ، المعاملات الأولى تكون على مستوى البت.
                • not : هذا المعامل بالتأكد من أن الشرط خاطئ و يرجع القيمة المنطقية 1 ، أما إذا تحقق الشرط يرجع القيمة 0: و المثال التالي يبين ذالك:
                print not 2==3 #True
                print not 'batar'<>'batar' #False
                الآن إن كان لديك شيء من الغموض، قم بمراجعة الفصل جيدا لأننا سنعتمد عليه بكثافة في الفصل الموالي، بالتوفيق
                انتهى
                ملاحظة:
                بإمكانك الاستفادة من مميزات الرياضيات الأخرى باستيراد مكتبة الرياضيات، لكننا لن نتطرق لذلك في هذه الوحدة لاننا حاليا ندرس الخدمات الجاهزة في البايثون.
                سبحان الله و بحمده، سبحان الله العظيم
                "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
                ^ المعرفة الحقة، هي تلك التي نتقاسمها^
                جميعا نحو الأفق...... btr.max@gmail.com

                تعليق


                • #23
                  الوحدة الأولى: الفصل الرابع: الأوامر الشرطية

                  تقديم:

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


                  الدرس الأول: الدالة if

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

                  • إذا كان الأمر المراد تنفيذه يتكون من سطر واحد يستحسن استعمال الطريقة التالية:
                  a=2
                  if a==2 : print 'a=2'
                  • إذا كان الأمر المراد تنفيذه يتكون من عدة سطور فأنصحك باستعمال محرر نصوص البايثون الافتراضي أو محرر يدعم البايثون، لان هذه الأخيرة لا تفرق بين الصناديق بالأقواس أو اللامات كما يفترض، بل بالمساحة الفارغة فقط، لذا يجب أن تدفع السطور قليلا (المحرر المختص يفعل ذلك افتراضيا) و تحرص أنها في نفس المستوى، و لإلغاء الصندوق ترجع إلى المستوى السابق (بداية السطر إن كنت استعملت دالة واحدة) انظر المثال:
                  a=2
                  if a==2 :
                  a+=10 # هذا هو الصندوق
                  print a # الخاص بالدالة
                  print'end' # هذا السطر غير داخل في الصندوق
                  جميل أليس كذلك ، الآن غير قيمة المتغير، ستلاحظ أن جواب الشرط لم يتم تنفيذه، إذن الدالة تعمل، لا تنس التفكير في أمثلة أخرى لتدعيم معلوماتك، بالتوفيق.

                  الدرس الثاني: تنفيذ سطور إن لم يكن الشرط صحيحا بالدالة if ، تدخل الدالة else :

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

                  a=8
                  if a<6 :
                  a+=1
                  print a
                  else :
                  a-=1
                  print a
                  print 'end.'
                  الشرح:
                  في هذا المثال سيتم التأكد إذا كانت قيمة المتغير اصغر من 6 ، فان كان كذلك سيتم إضافة 1 إليه ثم يطبع، فإن لم يكن ينقص منه 1 ثم يطبع، وفي النهاية سيتم طباعة الكلمة انتهى.
                  ملاحظة:
                  الدالة else يمكن أن يكتب صندوقها على شكل سطر أو عدة اسطر كما الدالة if
                  لا يمكن استدعاء الدالة else إلا بمعية الدالة if لأنها متممة لعملها.

                  الدرس الثالث: تنفيذ مجموعة متتابعة من الاختبارات، انضمام الدالة elif للمجموعة

                  الآن قد نحتاج إلى تنفيذ مجموعة متتابعة من الاختبارات ، فان كانت قيمة أحدها صح، يتم تنفيذ صندوقه، أما إن كانت قيمها جميعا خطا يتم إتمام سير البرنامج أو يتم تنفيذ صندوق ثم إتمام سير البرنامج، هذا الأمر سهل كذلك و هو إضافة دالة جديدة بعد الدالة if ، إنها الدالة elif
                  الدالة معناها else if (في لغات البرمجة الأخرى تكتب غالبا على الشكل else if أو elseif )، وبالتالي أظنك عرفت ماهيتها دون شرح، لكن لنعطي مثالا:

                  a=5
                  if a==2 : print 'value=2'
                  elif a==3 : print 'value=3'
                  elif a==4 :
                  a+=5
                  print a
                  بإمكانك إضافة الدالة else إلى آخر الإختبارات لتنفيذ صندوق في حالة كانت كلها تحمل قيمة خطأ، مثال:
                  a=0
                  if a==1 : print 'azerty'
                  elif a==2 : print 'qwerty'
                  else : print 'no info'

                  الدرس الرابع: مجموعة الدالة if و العبارات المنطقية AND و OR و NOT :

                  ذكرنا في درس العبارات المنطقية أن هذه المعاملات تستعمل كثيرا لصناعة الشروط، هنا سنعطي مثالا عليها:

                  a=2 ;b=3 ;c=5
                  if a==4 and b==3 and c==7 : print " جميع الشروط صحيحة "
                  elif a<1 or b>8 or c==b : print ' احد الشروط على الأقل صحيح '
                  else : print ' حقيقة كل الاختبارات خطأ '
                  ملاحظة: بامكانك استعمال الاقواس لتفادي التشويش، مثلا:
                  if(8==2)or(5==8)or(2==2) : print " احد الشروط صحيحة "
                  ملاحظة 2: لا تنس انه للكتابة باللغة العربية لابد من تنشيط التشفير، لذلك حاول الابتعاد عن العربية حاليا لتطبيق الأمثلة، أنا اكتب بالعربية حاليا للشرح فقط.

                  الدرس الخامس: تعشيش العبارات الشرطية السابقة:

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

                  a=2 ;b=4
                  if a==2 :
                  if b==4 :
                  b+=2
                  print b
                  else : print a
                  else print 'la valeur de a n\'est pas 2'
                  الأمر سهل، وأتمنى أن يكون مفهوما للجميع .
                  التعديل الأخير تم بواسطة batar; 11 / 08 / 2007, 01:37 PM. سبب آخر: للاسف بعض رموز البايثون يستعملها المنتدى لعرض تلك الصور المتحركة، استعمل الملف المرفق احسن
                  سبحان الله و بحمده، سبحان الله العظيم
                  "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
                  ^ المعرفة الحقة، هي تلك التي نتقاسمها^
                  جميعا نحو الأفق...... btr.max@gmail.com

                  تعليق


                  • #24
                    الوحدة الأولى: الفصل الخامس: حلقات التكرار
                    تقديم:
                    لقد تعرفنا على مركز تصنيع القرارات في البرامج،ألا و هو الدوال الشرطية، و تعرفنا كذلك على الطريقة التي يعتمدها البايثون في تصميم البرامج و التي استحق عليها لقب البرمجة المنظمة، ألا و هي طريقة اعتماد الصناديق،الآن جئنا للتعرف على نوع جديد من الدوال، و هي التكرارات أو حلقات التكرار، و الغرض من هذه الدوال هو تكرار صندوق معين (سنستعمل من الآن فصاعدا كلمة صندوق) لعدد من المرات إذا كان شرط معين صحيحا
                    فيما تنفعنا عبارات التكرار؟
                    عبارات التكرار تنفع في كل شيء يكون فيه أو يشبه تكرارا، و الهدف منها الاقتصاد في الكود و الجهد والوقت، و كذلك لان الحاسب يحب كثيرا هذا النوع من الدوال (صدق) فكر فقط في شيء تفعله كل مرة بتوفر شرط معين، ولكي لا تجهد نفسك بذلك تقوم بحلقات التكرار.
                    أمثلة بسيطة:
                    نريد طباعة الأعداد من 0 إلى غاية 1523، قد تحتاج لأيام إن لم تجد الحل.
                    نريد طباعة جدول مرتب فيه ألف اسم و هوية ومهنة، مهمة مضنية بدون تكرارات (في هذا الدرس سنصنع جدول بدئيا فقط، و الباقي للدروس القادمة)
                    تنبيه:
                    عندما نصنع تكرارا معينا فإننا نعرف الشرط الذي يحدث فيه التكرار، و الشرط الذي يتوقف عنده التكرار، إياك ثم إياك أن تصنع تكرارا دون أن تجعل له ما يوقفه، فذلك سيجعله بلا نهاية، و ستسبب المشاكل لمن سيستعمل برنامجك.
                    الآن لنبدأ الدروس...

                    الدرس الأول : الدالة while :

                    أسهل تكرار ( الواقع انها كلها سهلة، لكن هذا الاسهل)، اتوقع ان تستعمله اكثر، و صيغته العامة كالتالي:

                    while (condition) :
                    execute this code
                    مثال بسيط:
                    a=7
                    while (a<20) :
                    print a
                    a+=1 # نحن نضيف هنا القيمة 1 لنضمن توقف التكرار، إن مسحت هذا السطر سيتم طباعة 7 إلى ما لا نهاية
                    print 'end.'
                    شرح المثال:
                    في هذا البرنامج أعطينا قيمة بدئية للمتغير و هي 7، ثم أمرنا دالة التكرار بتنفيذ ما في صندوقها كلما كانت قيمة المتغير اصغر قطعا من20، و في نهاية التكرار سيرجع البرنامج إلى سيره العادي، و هذا ما يدل عليه طباعة الكلمة end. ، شغل البرنامج من نافذة الأوامر و سترى انه يتم كالتالي:
                    7
                    8
                    9
                    10
                    ***
                    18
                    19
                    end.
                    تمرين تطبيقي:
                    نحن نريد تصميم برنامج يقوم بالتحقق من أن قيمة متغير name هو لقبك، فإذا تحقق ذلك يقوم بطباعة جدول بسيط يتضمن الاعداد من 1 الى 8
                    الحل:
                    a,b='batar',1
                    if a=='batar':
                    while(b<=8):
                    print'---------'
                    print'|',b,'|',b+1,'|'
                    b+=2
                    print'---------'
                    لاحظ بعد تطبيق المثال أو مثالك (بالنسبة لمستعمليmsdos )، سيكون مقاربا للتالي:
                    الصورة في المرفقات
                    هنيئا لقد أنجزت المثال
                    تمارين تطبيقية:
                    • أنجز برنامج يقوم بطباعة جدول لجداء الأعداد من 1 إلى 50 في العدد 8
                    • أنجز برنامجا يقوم بانجاز الأس المربع للأعداد من 8 إلى 16
                    • أنجز برنامجا يقوم بطباعة مرحبا(بالانجليزية أو الفرنسية أو أي لغة لاتينية أخرى) عشر مرات
                    • فكر في برنامج و صممه عن نفسك يكون جوهره تكرارا.
                    سبحان الله و بحمده، سبحان الله العظيم
                    "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
                    ^ المعرفة الحقة، هي تلك التي نتقاسمها^
                    جميعا نحو الأفق...... btr.max@gmail.com

                    تعليق


                    • #25
                      مشكلة جديدة في الكود داخل المنابر،
                      بالنسبة للدروس من الاوامر الشرطية الىما فوق سنعتمد كثيرا على الصناديق، و لكنها لا تظهر هنا في المنتدى لدى لن يحترم المفسر الكود،الافضل تحميل الملف، و ساعمل على انشائه بضيغة pdf لمن يواجه مشكلة و كذا البحث عن موقع لتحميل الملفات موثوق فيه، بالنسبة لملفات الفيديو لا ارى اي داع للجوء اليها حاليا، لكن ساعمل واحدا للتعريف البدئي بمفسر و محرر البايثون للمبتدئين، و سانشره يو الاثنين المقبل.
                      سبحان الله و بحمده، سبحان الله العظيم
                      "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
                      ^ المعرفة الحقة، هي تلك التي نتقاسمها^
                      جميعا نحو الأفق...... btr.max@gmail.com

                      تعليق


                      • #26
                        هذا رابط جديد لتنزيل الملف هنا
                        سبحان الله و بحمده، سبحان الله العظيم
                        "سرعان ما ننسى ما تعلمناه، لكننا لا ننسى ابدا ما اكتشفناه" حكمة
                        ^ المعرفة الحقة، هي تلك التي نتقاسمها^
                        جميعا نحو الأفق...... btr.max@gmail.com

                        تعليق


                        • #27
                          جزاك الله ألف خير اخوي batar
                          (الناس أعداء ما جهلوا)

                          تعليق


                          • #28
                            يعطيـك الف عافيه أخوي بتر على الدروس الجديده..
                            وإن شاء الله راح أتابع معكم بعد يوم أو يومين وأطبق معكــم..
                            لان عندي إلتزامات خلال هاليومين..


                            أشكرك مرة أخرى أخي بتر..

                            تعليق


                            • #29
                              درسي للبايثون في بلندر جايم انجن
                              ftp://www.khayma.com/python/001.htm

                              تعليق


                              • #30
                                هذا الرابط الصحيح
                                http://www.khayma.com/CGWOODS/python/001.htm

                                تعليق

                                يعمل...
                                X