تعلم البرمجة في ساعة اساسيات البرمجة من الصفر شرح بايثون Python Programming Crash Course
👁 1 مشاهدة
النص الكامل للفيديو
في ساعه واحده بس هتتحول من شخص صفر في البرمجه صفر بجد او شخص حاول يتعلم قبل كده وماعرفش لشخص برمج برنامج متكامل بنفسه شخص بيعرف يكتب كود وفاهم كل سطر كود اللي هتشوفه النهارده جربته قبل كده مع ناس مختلفين ودي كانت النتيجه انا عندي 14 سنه واتعلمت كثير من الفيديو ده انا وابني اللي عمره تسع سنين قعدنا على الفيديو ده واتعلمنا منك اول حاجه في بايثون اول مره في حياتي اشوف فيديو بالكامل على يوتيوب طوله ساعه صراحه فيديو حلو وجميل ويدفعك لتعلم البرمجه طبقا لتقرير المنتدى الاقتصادي العالمي البرمجه ومهاره حل المشكلات هيكونوا مهارات اساسيه الناس لازم تتعلمها لو عايزه تحافظ على شغلها او تواجدها في سوق العمل في عصر الذكاء الاصطناعي يعني البرمجه دلوقتي مهاره اساسيه محتاج تتعلمها سواء هتشتغل مبرمج او لا فبجد الساعه دي ممكن تغير حياتك مش مطلوب منك اي معرفه سابقه انا عايزك بس تسيب لي نفسك وتركز معايا وتقدر تطبق اللي هتشوفه النهارده من الموبايل او التابلت او الكمبيوتر او اللاب توب يلا بينا نبدا عشان انا متحمس جدا متحمس محمس جدا ان انت تكتسب قوه المستقبل فسلام عليكم انا اسلام ودي قناه كوتزيلا الفيديو ده برعايه كورس احتراف بايثون واكتساب قوه المستقبل اللي انا عامله للناس اللي عايزه تكون متميزه وليها مكانه وتاثير في عصر الذكاء الاصطناعي هسيب لك رابط الكورس في الوصف وفي اول كومنت بخصم 60% عزيزي مبرمج المستقبل خلينا نبدا نستمتع مع بعض يعني ايه نستمتع يعني ندي الكمبيوتر اوامر نبرمجه عشان يطلع لنا مخرجات معينه يطلع لنا برنامج مشروع متكامل عشان نعمل كده محتاجين نفتح الموقع ده هسيب لك رابط الموقع ده في الوصف ولكن لا سبب من الاسباب انت بتفتح من الموبايل من الكمبيوتر من التابلت في اي وقت في الحياه ما لقيتش الموقع ده شغال هتروح على جوجل هتكتب اون لاين بايثون وتفتح اي موقع من المواقع اللي هتطلع هتكون شبه الموقع ده بالظبط هتقدر هنا تكتب الكود وتعمل ران عشان تشغل الكود ويبقى معاك مشروع متكامل بنهايه هذا الفيديو اللغه اللي احنا هنبرمج بيها هي لغه بايثون. لغه بايثون هي الاداه اللي هندي الكمبيوتر بيها اوامر عشان ينفذها. مش فارقه قوي اللغه لان كل لغات البرمجه بتشترك في مفاهيم البرمجه الاساسيه اللي احنا عايزين نركز عليه هو فهم المفاهيم الاساسيه دي ايا كان اللغه اللي انت هتشتغل بيها بعد كده. في الاخر على فكره الكمبيوتر سواء سواء انت هتبرمج له ببايثون بجافا بالعفريت الازرق بلس بلس كل دي لغات برمجه الا العفريت الازرق هو بيترجم الكلام ده لحاجه اسمها الماشين كود لغه الاله هو مش بيفهم غير لغه الاله اللي هي عباره عن زيروز وونز بالشكل ده احنا كبني ادمين مش هنعرف نبرمج بالشكل ده فعملنا حاجه اسمها هاي ليفل بروجرامين لانجويجز لغات برمجيه رفيعه المستوى عشان نعرف احنا البني ادمين الانسان ضعيف الانسان الضعيف ده مش هيعرف يبرمج كده ولكن هيعرف يبرمج بالهاي ليفل بروجرامين لانجويجز دي اللي كل الناس حاليا شغاله بيها اخترنا بايثون بالتحديد عشان لغه سهله وتقدر تستخدمها في اي مجال في الحياه سواء مجال برمجي او حتى لو انت مش مبرمج سواء هاوي او واحد بتشتغل وعايز تستخدم البرمجه في شغلك تعمل سكريبتات في حاجات تساعدك كل ده بايثون هيكون شغال معاك فيه فهو اختيار ان شاء الله موفق جدا خلينا نبدا باول سطر كود اول سطر كود هو هذا الامر برنت برنت واقواس يعني ايه برنت واقواس بايثون في حاجه اسمها الفانكشنز اي لغه برمجه في حاجه اسمها الفانكشنز الوظائف وظائف متعدده موجوده جوه اللغه بتستدعيها من اللغه دي جزء من اللغه برنت هي احد الوظائف او الفانكشنز دي وفانكشن هو المصطلح العلمي او التقني البرمجي الصحيح طبعا وظيفه دي يعني حاجه ترجمه كده بالعربي لكن البرمجه بالانجليزي فلازم نركز على الكلام اللي بالانجليزي عشان هو ده اللي هيتكرر قدامنا بعد كده كتير طبعا انا هشرح كل حاجه بالعربي ما تقلقش برنت دي وظيفتها ايه؟ الفانكشن بتاعها ايه؟ بتعمل ايه؟ هي اللي بتطبع لي المخرجات او النتائج بتاعه البرمجه بتاعتي اللي انا محتاج اشوفها قدامي على الشاشه بتتكتب بالشكل ده وبيتفتح اقواس طب انا عايز اطبع جمله هطبع جمله ازاي؟ هبتدي جوه برنت دي افتح دبل كوتس يعني ايه دبل كوتس؟ يعني علامات تنصيص بالشكل ده او افتح سينجل كوتس يعني ايه سينجل كوتس؟ يعني علامات تنصيص بالشكل ده ايه الفرق بين السينجل والدبل بص كده معايا الدبل متكونه من اثنين كل ناحيه والسينجل بتبقى واحده بس من اللي هي ايه الشرطه دي كل ناحيه ففي سينجل كودس ودبل كودس مش فارق استخدم ايه فيهم حاليا جوه السينجل او الدبل كودس دول بقدر اكتب الجمله اللي انا عايز اطبعها فانا ممكن اقول هلو ليديز اندنتلمن اهلا بكم ايها الساده او السيدات والساده جبنا السيدات قبل الساده عشان دايما يقول لك ليديز فيرست السيدات اولا وجنتلم مشمان الجمع يا جماعه مش عايزين نبوظ الجرامر لو انا عملت ران لو عملت تشغيل لهذا الامر اللي انا اعطيته للكمبيوتر بالشكل ده المفروض يطلع معايا هنا حاجه هيطلع معايا هذه الجمله هلو ليديز اند جنتلمن كود اكسكيوشن سكسسفل تم تنفيذ الكود بنجاح الف مبروك كتبت اول سطر كود فهمت ان دي عباره عن وظيفه الوظيفه دي بدخل لها نص معين عشان عايز اعرضه جميل قوي يبقى واضح ان انا كده في البرمجه عندي انواع من البيانات البيانات دي ممكن اعرضها ممكن اغيرها ممكن استخدمها بشكل ما اول نوع من البيانات معانا اللي شفناه هو نص يعني ايه بالانجليزي سترينج بتتكتب ازاي بتتكتب بالشكل ده سترينج طب ايه الطريقه اللي انت كتبت بيها دي ليه عملت علامه ليه عملت علامه الشباك وبعدين كتبت سترنج هقول لك في حاجه اسمها في لغات البرمجه وفي بايثون كمان كومنت الكومنت ده التعليق ده بيتكتب في لغات البرمجه بطريقه مختلفه في بايثون بيبدا بعلامه الشباك ده سطر مش هيتنفذ ككود يعني لو عملت له ران بالشكل ده مش هيطلع معايا ومش هياثر على البرنامج بتاعي الكومنتس دي موجوده في لغات البرمجه عشان لو انا بكتب سطر كود وعايز اكتب نوته لنفسي اوضح حاجه لنفسي اوضح حاجه او اشرح حاجه لحد بيشتغل معايا على هذا المشروع هيبص على اسطر الاكواد دي وعايز يفهمها اكت او لو هي معقده او صعبه او كده فببتدي اكتب له كومنتس عشان اشرح فيها الكود بتاعي عشان اوضح حاجه معينه فهنا انا بكتب الكومنت بالشكل ده والكومنت ده مش بياثر على البرنامج بتاعي بايثون بيتجاهله الكومنت دايما لازم يبدا بهاشتاج سترينج هو نوع البيانات اللي انا استخدمته هنا اللي هو بيتكتب بين دبل كوتس او سينجل كوتس ده اسمه سترينج بالعربي يعني سلسله نصيه نقدر نعتبره نص لما اعوز اطبع نص او كلام او لو هستخدم كلام او كده ده نوع من البيانات اسمه ستر سترنج طيب عندي نوعاني من البيانات اسمه ايه؟ اسمه انتجر رقم ممكن اطبع رقم ممكن اجي اقول كده برنت 5 ماشي هلاحظ ان الرقم ما كتبتوش داخل علامات تنصيص او دبل كوتس او سينجل كوتس لان هو مش سترينج هو رقم هو انتجر رقم عشري ما فيهوش كسور لو طبعت الرقم ده هيطبع معايا ما فيش اي مشكله خمسه اطبعت هنا اللي هو الامر ده والامر ده اطبعه هنا دايما الاوامر في بايثون بتتنفذ بالترتيب الاسطر بتاعه الكود بتتنفذ بالترتيب فدايما هو هيخش يشغل اول سطر هيلاقي الاسطر دي فاضيه مش هيعمل حاجه هيلاقي دي كومنت مش هيعمل حاجه سطر فاضي مش هيعمل حاجه كومنت مش هيعمل حاجه سطراني بيقول له اطبع رقم معين فهيطبعه ولحد دلوقتي كل حاجه تمام يبقى انا دلوقتي اعرفت على نوعين من انواع البيانات نوع الانجر ونوع السترينج طبعا في انواع ثانيه كتير ولكن دول كافيين بالنسبه لي في المرحله دي مع بعض واحنا شغالين هنتعرف رف على انواع ثانيه في وقت استخدامها ولكن اللي مهم وعايزين ناكد عليه حاليا ان الكمبيوتر غبي جدا ما بيفهمش غير اللي مكتوب له بالحرف ما ينفعش اتوقع منه اي ذكاء بالتالي وانا بتعامل معاه لازم اكون دقيق جدا ايه معنى الكلام ده تخيل ان انا جيت كتبت برنت دي ولكن خليت حرف الكابيتل او خليت حرف البي قصدي كابيتل حرف كبير بالشكل ده مبدئيا هلاحظ على طول ان الكلمه البرنت اللي انا متعود اشوفها باللون الاصفر بقت باللون الابيض ماشي ممكن ما يكونش ده دلاله على شيء طب تيجوا كده نجرب نعمل ران هنلاقي ان ان ايرور خطا اه عايزين بقى نبدا نعرف ان في البرمجه في حاجه اسمها اخطاء ممكن تحصل شيء طبيعي جدا كل المبرمجين بيتعاملوا هذا مع هذا الموضوع ولكن عشان ما تشدش في شعرك لو عندك اكواد كتير جدا برنامج بقى كبير ما فيهوش سطر ولا اثنين ولا ثلاثه في الاف السطور طب لما يحصل ايرور هتعرف الايرور ده فين ازاي لازم تفهم ازاي تقرا رساله الايرور ده اللي هنعمله مع بعض دلوقتي وهنشوف ان في كمان على مر هذا الفيديو انواع مختلفه من الايرورز في البرمجه طيب اولا بيقول لي ايرور خطا تمام الخطا ده فين في فايل اسمه مين دوت باي فايل اسمه مين دوت باي ده الفايل اللي بكتب فيه الكود بتاعي ايه مين دي اسم الفايل كان ممكن يبقى اسمه سعاد كان ممكن يبقى اسمه حماده مش فارق معايا اللي فارق معايا الدوت باي ده الاكستنشن او نوع الملف دوت باي عشان انا بكتب كود بلغه بايثون زي ما عندك ملفات الصور بتبقى دوت جف جيج دوت بي ان جي عندك ملفات في الويندوز اللي هي بتشغل منها اسمها دوت اي اكس اي وهكذا ده ملف دوت باي ده نوعه طيب الخطا فين في هذا الملف في السطر الاول في لاين 1 اه في السطر الاول اهو رقمه 1 اللي انا كتبت فيه هذا الكود طب ايه نوع الخطا نوع الخطا هو نيم ايرور خطا في الاسم يعني ايه هلاقيه بيقول لي نيم برنت كلمه برنت اسم برنت اللي انت كتبته بالشكل ده بالبي اللي هي كابيت مش متعرف في لغه بايثون قاموس لغه بايثون في عده كلمات موجوده اقدر استخدمها منه في عده فانكشن زي ما قلت وكلمات اخرى الكلمه دي مش منهم انا معارفهاش انا كبايثون معارفهاش ديد يو مين هل كنت تقصد برنت اللي هي ببي سمول هقول له اه تمام يبقى انا كده عرفت ازاي اقرا الخطا لان انا لو عندي ملفات مشروع كبير هيبقى في ملفات كتير مش ملف واحد بس بكتب فيه كود فبشوف الخطا في انهي ملف بشوف الخطا في انهي سطر بفهم نوع الايرور لان في انواع ايرور مختلفه فده خطا في المسمى بيقول لي برنت دي مش متعرفها انا كبايثون ماعرفهاش فلازم اكون دقيق جدا وانا بكتب الامر عشان ما يحصليش الايرورز دي وعشان الكمبيوتر غبي مش فاهم الفرق ان يا عم ما بي كابيتال يعني ما تمشيها فرقت ايه من بي سبور من بي سمول لا فرقت جدا في البرمجه تفرق كمان لو نسيت حرف يعني تخلي انا نسيت حرف الاي كده بالشكل ده فبقت برنت من غير حرف الاي لو جيت اعمل ران هلاقي نفس الايرور بالظبط نيم ايرور في السطر الاولاني برنت ديفايند مش معرفه هل كنت تقصد برنت اللي هي بتتكتب بحرف الاي هقول له ايوه وانا متاسف جدا يا غبي مش انت طبعا كمشاهد انا اسف انت على راسي انا قصدي انت ككمبيوتر غبي ما بتفهمش اي حاجه وخلاص غير اللي انت عارفها الحاجات اللي انت حافظها انا اللي بقول لك تعمل ايه ولازم اقوله لك بدقه كذلك الامر لو انا جيت هنا بكتب سترينج صح اتفقنا ان نوع البيانات اللي بين علامات تنصيص اسمه سترينج لو نسيت اقفل السينجل كودس يعني فتحت واحده هنا اهي ونسيت اقفلها صح لو جيت عملت ران هيحصل لي ايه؟ هيحصل لي برده ايرور ولكن نوع مختلف من الايرور هيقول لي برده في نفس الملف مين دوت باي في السطر الاولاني عندك ايرور هنا وبيشاور لي الايرور بدايته فين بيقول لي سنتكس ايرور هنلاحظ ان هو بيشاور بالسهم على علامه التنصيص ده يدل ان في حاجه غلط في موضوع علامه التنصيص انا طبعا عارف ايه الغلط لان انا عملت قاصد ان انا ما قفلتش علامه التنصيص اللي فتحتها ولكن هلاقي نوع الايرور ده مختلف اسمه سينتكس ايرور يعني ايه سنتكس ايرور يعني خطا في طريقه كتابه بايثون كل لغه برمجه ليها سنتكس معين يعني ايه سنتكس يعني قواعد معينه في طريقه كتابه اللغه فهو هنا بيقول لي في خطا في طريقه كتابتك للغه انرمنيتد سترينج ليترال انترمنيتد يعني حاجه ما خلصتش او ماتقفلتش اتفقنا ان ده نوعه سترينج فهو بيقول لي السترنج اللي انت كتبته ده انترمنيتد انت ما قفلتوش ديتكتد اتين 1 شفنا ده او الخطا ده حصل في لاين 1 هقول له متشكر انا كده فهمت ان ده خطا في طريقه كتابه لغه بايثون لازم اتجنبه ان انا ما ينفعش اعمل انترمنيتد سترنج لو فتحت سترنج لازم اقفله بالشكل ده وطبعا لو انا عملت ران دلوقتي كل حاجه هتبقى تمام كذلك الامر لو انا استخدمت دبل كوتس بالشكل ده وعملت ران مش هيحصل لي اي مشاكل لكن لو مسحت واحده من الدبل كوتس دول خلوني امسحها كده واعمل ران هلاقي نفس الايرور بالضبط بنفس الوصف بكل حاجه هيقول لي انرمنيتد سترينج ليترال سينتكس ايرور في السطر الاولاني وهكذا فكده لحد دلوقتي ماعرفش عد قدم الفيديو وقت قليل جدا انت عرفت ان لغات البرمجه بتتشارك في نفس مفاهيم البرمجه الاساسيه ده اللي احنا بنحاول نشرحه هنا احد المفاهيم دي ان انا عندي حاجه اسمها فانكشن في لغات البرمجه كل فانكشن بيبقى ليه وظيفه معينه الفانكشن بتاع وظيفه برنت ان هو ياخد نوع من انواع البيانات ويطبعه لي وعرفنا ان في نوع اسمه سترينج بيتحط ما بين سينجل او دبل كودس وعرفنا ان في نوع اسمه انتجر زي الرقم ده او اي رقم ثاني مثلا بالشكل بالشكل ده رقم ما فيهوش كسور رقم عشري انتجر طب هل في ارقام مش عشريه؟ اه في ارقام فيها كسور صح يعني انا لو جيت دلوقتي وعملت برنت وقلت مثلا 10.5 10.نص نص وعملت ران الرقم ده برده هيطبع ولكن الرقم ده نوعه مختلف عن الرقم ده انواع البيانات دي كلها مختلفه ده سترنج ده انتجر ده اسمه فلوت الرقم اللي فيه كسور في بايثون بيكون اسمه فلوت بالشكل ده انواع البيانات المختلفه دي حاجه موجوده في حياتنا كلها عارف انت لما بتمسك الموبايل بتسجل واحد كونتاكت جديد او واحد جديد انت اعرفت عليه فبتكتب اسمه بعدين بتكتب رقمه دي انواع بيانات مختلفه بعدين بتحط صورته فالصوره دي نوع بيانات معين، الاسم نوع بيانات معين، الرقم نوع بيانات معين، كذلك في البرمجه، ما هي الحاجات دي اصلا متبرمجه على هذا الاساس، صح؟ الموبايل ده والابلكيشنز اللي انت بتستخدمها فيه وكل الكلام ده متبرمج على هذا الاساس، وطبعا بما ان في انواع بيانات مختلفه ففي تعاملات خاصه لكل نوع من انواع البيانات دي. يعني في حاجات تقدر تعملها في السترنج ما تقدرش تعملها في الارقام والعكس صحيح. في حاجات تقدر تعملها في الارقام ما تقدرش تعملها في السترنجز ده طبيعي صح مش كل البيانات في الحياه بنقدر نتعامل معاها بنفس الشكل كذلك نفس الموضوع في البرمجه وطول ما احنا ماشيين في المشروع هنشوف تاثير ده برض وبالمناسبه انا عندي وظيفه ثانيه موجوده جوه البايثون غير البرنت فانكشن ثاني اقدر اعرف اقدر اعرف منه نوع البيانات يعني اقدر انا اساله ايه نوع البيانات الكذا وهو يرد عليا عارف الوظيفه دي اسمها ايه الفانكشن ده اسمه تايب وبما انه فانكشن فاتفقنا ان اي فانكشن بنكتب اسمه وبعدين بنفتح قص صين صح وباين من ايه من اسمه تايب يعني نوع شفتوا البني ادمين سهلوا على نفسهم ازاي لما عملوا الهاي ليفل بروجرامين لانجويجز بدل ما كنا هنبرمج بالاصفار والواحد كده وهنتوه خالص لا عملنا لغه شبه الانجلش شويه شبه الانجليزي نقدر نفهمها طيب لو انا قلت التايب بتاع اسلام انت عارف التايب بتاع الاسلام ده ايه صح اللي هو اسمي الحاجه اللي محطوطه بين دبل كودس علامات تنصيص انت عارف ان ده سترينج تمام طب انا لو سالت بايثون وجيت عملت ران ايه اللي هيطلع قدامي امم يلا بسرعه يا باشا هلاقي ما طلعش حاجه ليه ما طلعش حاجه لان دي وظيفه بتعمل حاجه معينه الوظيفه دي بتعرف النوع بتاع البيانات اللي جواها لكنها ما بتعرضوش طب ايه الوظيفه اللي عندي اللي مسؤوله عن العرض هي البرنت ففعليا هو الكود اتنفذ ما فيش اي مشكله والبرنامج اشتغل ما فيش اي ايرورز ده معناه ان انا ما عنديش مشاكل هنا لكن الكمبيوتر غبي هو مش فاهم ان انا النوع ده نوع البيانات اللي انا بسال عنه ده طب انا عايز اشوف شوفوا وريه لي بقى من غير ما انا لازم اقول لك يعني برنت هيقول لي اه لازم تقول لي برنت انا بنفذ اللي انت بتقول لي عليه بالحرف فاقول له ما فيش مشكله يا سيدي انا ممكن كل الكلام ده احطه جوه البرنت يعني ممكن انا اجي هنا اقول برنت وافتح الاقواس الاقواس دي قلنا بتاخد مدخلات المدخلات دي قد تكون نوع من انواع البيانات زي سترنج او رقم انتجر او رقم في كسور فلوت او وظيفه ثانيه فانكشن جوه فانكشن ما فيش مشكله هقول تايب وافتح الاقواس واحط جواها اسلام ممكن دلوقتي امسح دي مالهاش لازمه لو دلوقتي عملت ران هلاقي ايه اللي حصل هلاقي على طول قال لي اه الكلاس اس تي ار يعني ايه كلاس اس تي ار يعني اسلام ده نوع البيانات ده من فئه كلاس يعني فئه اس تي ار اس تي ار اللي هي ايه اختصار سترينج صح انت صح فعلا اسلام ده النوع بتاعه سترنج نوع البيانات ده سترنج طب لو سالت على رقم هكتب خمسه لان الرقم ما بيتحطش في علامات تنصيص وعملت ران بالشكل ده هيقول ق ده انت ده انتجر انت اختصار انتجر ده رقم ده من نوع رقم طب لو قلت مثلا 10.نص نص تمام اللي هو رقم في كسور هيقول لي ايه؟ هيقول لي اه ده من كلاس فلوت نوع البيانات بتاع ال 10 ونص ده فلوت طب لو حطيت ال 10 ونص دي في علامات تنصيص يعني لو خدت رقم حطيت حوالينه علامات تنصيص وعملت ران هلاقي ايه اللي حصل؟ هلاقي بيقول لي نوع البيانات ده سترينج صح؟ اه صح طب ازاي؟ ما هو ده رقم اقول لك لا دلوقتي هو ما بقاش فاهمه كرقم ليه؟ عشان انت حطيت له علامات تنصيص هو بايثون اول ما بيشوف علامات تنصيص خلاص اللي جواها بشكل اوتوماتيكي هو سترنج ايا كان كتبت رقم مع حروف كده مع رموز كده مع بص اكتب بطيخ للصبح عملت سبيسز عملت نقطه عملت كوما كل ده بالنسبه له سترينج هو مش فاهم انت بتحاول تقول ايه قد تكون دي لغه الكلاب ممكن تكون بتتكلم كده مثلا احنا ما نعرفش هو ما عليه الا ان هو ينفذ اللي موجود طالما احنا قلنا له ان دي سلسله نصيه سترينج فهو هيتقبلها بشكل طبيعي جدا ما فيش مشكله وهيقول لي دي سترنج لكن لو انا شلت علامات التنصيص وحاولت اطبع حاجه متخلفه زي اللي مكتوبه دي هلاقي ايه اللي حصل؟ هلاقي هيضرب في وشي لازم هيشتمني اصلا يعني لو قال لي ايرور بس يبقى كتر خيره وفعلا كتر خيره كان راجل محترم على قد ما هو غبي قال لي ايرور بس كان المفروض يقول لي اكت من كده فين الايرور في مين دوت باي هذا الملف في السطر ال1 في السطر ال1 عندي هنا مصيبه مش ايرور عندي قنبله نوويه ايه هي بيقول لي انفاليد ديسيمال ليترال سينتكس ايرور انهي شفناه ده قبل كده خطا في طريقه كتابه بايثون خطا في طريقه كتابه الحاجات في بايثون ارتكبت جريمه انت حاولت هنا تكتب رقم ديسمال رقم فيه كسور ولكن انفالد ما ينفعش الطريقه اللي انت كتبت بيها الرقم دي لان مافيش رقم بيتبعه كل الخزعبلات دي صح طيب يا عم مش هكتب رقم خليني اكتب مثلا حروف كده من غير ما يكون فيها ارقام او كده وتعالوا نعمل ران هل هيختلف الايرور طب هل هيبقى ايرور اصلا تعالوا نشوف مع بعض اه قال لي ان في ايرور في ايرور فين في اللاين 11 تمام في السطر ده قال لي نيم ايرور المره دي الايرور ده كنا شفناه في حته قبل كده لما كنا غيرنا البرنت دي فاكرين بوظناها قال لي نيم هشف شكف تشيكشيو از ديفايند الحاجه دي مش متعرفه عندي ما عنديش حاجه في بايثون اسمها الكلام ده هقول له عندك حق اكيد ما فيش حاجه في بايثون اسمها الكلام ده طب هل ممكن اخلي في حاجه في بايثون اسمها الكلام ده تصدق ممكن اه خليني اخد الكلام ده كوبي بيست لان انا عمري ما هقدر اكتبه زي ما كتبته كده تاني واعمل له بيست هنا واقول الكلام ده يساوي او بلاش يساوي الكلام ده هحط فيه قيمه 10 تفتكروا ايه اللي هيحصل دلوقتي لو عملت ران تيجوا نعمل ران كده بالشكل ده اه البرنامج اشتغل عادي كل السطور اتنفذت والتايب بتاع الهكش فش فش ده طلع انتجر اه ايه اللي انا بقى عملته ده والله عندي طريقه اخزن بيها حاجات في الكمبيوتر الكمبيوتر فيه ذاكره عندي حاجه في لغات البرمجه اسمها الفرييبلز المتغيرات دي ادراج زي الدرج اللي في الدولاب عندك كده في الذاكره تقدر تفتحها في لغه البرمجه وتحط فيها حاجه تحفظ فيها قيمه معينه والقيمه دي ممكن تغيرها يعني ممكن تشيل اللي جواها وبعدين تحط حاجه ثانيه ما فيش مشكله في نفس الدرج اللي واخد نفس الاسم ودي الطريقه اللي احنا بنحفظ بيها البيانات عشان لو عايزين نسترجع او نعيد استخدام هذه استخدام هذه البيانات في البرنامج بتاعنا فعندي كده حاجه اسمها اريابلز ماشي بالشكل دهيابلز دي ممكن اسميها اي حاجه الا بعض الكلمات المفتاحيه المعينه اللي بايثون بتحتفظ بيها زي برنت مثلا ما ينفعش اسمي اريابل برنت لان برنت دي وظيفه معينه في بايثون ما ينفعش اسمي اريابل تايب اي كلمه غالبا هتطلع معانا بالاصفر او بدرجات مختلفه كده غير الابيض يبقى ما ينفعش اسميها كفاريابل ودي حاجات اكيد انت هتعرفها مع الممارسه بسيطه جدا يعني مش مشكله برده الفريبل ليه بعض القواعد الثانيه ما ينفعش ان انت تبدا الفرييابل برقم يعني لو انا حطيت واحد هنا وحطيت واحد هنا عشان يبقى ايه اسم الفاريابل هو هو اللي هنا وجيت عملت ران بالشكل ده هلاقي ان هو طلع لي خطا في السطر ال 12 خطا هنا السطر ال 12 سنتكس ايرور خطا في طريقه كتابه او استخدام لغه بايثون ما ينفعش تبدا الفرييابل برقم حاضر مش هبدا الفاريابل برقم همسح الرقم من هنا وهمسح الرقم من هنا طيب عايز الفاريابل بتاعي يتكون من كلمتين هش فيك شش كودزيلا سبيس كودزيلا واجي هنا اطبع النوع بتاع اسم الفرييابل ده هو انا بالمناسبه لما بطبع النوع بتاع اسم الفريابل ده انا بطبع ايه في الاخر او بشوف النوع بتاع ايه بشوف النوع بتاع الحاجه اللي متخزنه جوه الفريابل ده الحاجه اللي متخزنه جوه الدرج ده فاكني بدل كل الكلام ده طالما طالما الكلام ده متخزن جواه 10 الفرييابل ده جواه رقم 10 يبقى اكني هنا بسال على رقم 10 بشكل مباشر كده لكن انا ممكن اغير الرقم ده واخليه اي حاجه صح ممكن افتح الدرج واشيل اللي جواه واحط جواه حاجه ثانيه فبدل ما اقعد اغير كل مره هنا خلاص انا هسيب اسم المتغير اسم الدرج ثابت واقول له يا تايب روح افتح الدرج ده بص ايه اللي جواه والله لقيت جواه حماده قو لي ايه النوع بتاع حماده لقيت جواه شيكولاته قو لي ايه النوع بتاع الشيكولاته لقيت جواه حاجه ثانيه قو لي النوع بتاعها وهكذا اقعد جوه الدرج ده اغير البيانات زي ما انا عايز عندي انواع بيانات مختلفه ممكن اخزن جواه سترنج ممكن اخزن جواه فلوت يعني ممكن ده يبقى رقم عشري وهكذا صح ولكن نرجع بقى لمشكله ثانيه هنشوفها دلوقتي ان انا لو عندي اريابل متكون من كلمتين بالشكل ده لو انا جيت عملت ران خلي بالكم انا كاتب عامل سبيس ما بين الكلمتين بايثون هيعترض على الكلام ده هيقول لي في السطر ال 12 وهيحط لي بص 30,000 سهم تحت كوتزيلا ده مش عارف ده بيشتمني ولا بيعظمني على العموم الله يسامحك بيقول لي ايه سنت س ايرور برض خطا في طريقه كتابه اللغه ما ينفعش يا ابني هتتعبني انت لسه بتعلم برمجه وعمال تعمل الاخطاء دي كلها اه عشان نتعلم مع بعض وعشان نفهم اللي بيحصل لو انت هتعمل يابل متكون من اسمين ما ينفعش تعمل ما بينهم سبيس ما ينفعش تعمل ما بينهم داش بس ممكن تعمل ما بينهم اندر سكور بالشكل ده ممكن تيجي هنا تصلح الخطا وتعمل اندر سكور كده وتعمل ران مش هيعترض على حاجه وهيقول لي النتيجه بتاعه البيانات اللي متخزنه جوه الفرييابل الغريب ده هذا الاسم العجيب هي فلوت صح فعلا اللي جوه الدرج ده فلوت طب لو غيرت اللي جوه الدرج ده وخليته نص كوتزيلا ليه نص عشان انا فتحت علامات تنصيص سترينج لو عملت ران هيقول لي اه ده سترينج تمام هل ممكن اخليه رقم عادي هيقول لي اه مافيش مشكله ده انتجر صح هيطلع لي دلوقتي ده انتجر فكده تمام كده عرفت انواع البيانات المختلفه البيانات دي ممكن اخزنها في متغيرات عشان لو عايز بعد كده اعمل عمليات معينه على المتغيرات دي زي ان انا اشوف القيمه بتاعتها في اي وقت ممكن اغير القيمه اللي جوه المتغير زي ان انا اشوف النوع بتاع المتغير ده او القيمه اللي جوه المتغير ده في اي وقت ممكن اغير الحاجه اللي موجوده جوه الدرج او جوه المتغير اللي هو جزء او مكان في الذاكره بتاعه الكمبيوتر فكل ده انا شفته لحد دلوقتي طبعا ما فيش حد هيسمي اسم بهذا البشاعه الا لو هو عايز يعذب نفسه والناس اللي شغاله معاه على المشروع هنشوف دلوقتي وهنكتشف خلال المشروع بتاعنا ازاي نسمي في فن في التسميه ده مش اي اسامي وخلاص مع ان اي اسامي وخلاص تنفع يعني انا لو سميتابل ده حماده وجيت اقول ايه التايب بتاع حماده نوع حماده ايه وعملت ران بايثون مش هيعترض اسميه حماده سميه سونيا براحتك طالما انت مش مخترق قواعد كتابه اللغه مش مبوظها مش عامل سينتكس ايرور انا ما عنديش مشكله سميه اللي انت عايزه عرفنا كده شويه معلومات عايزين نبتدي بقى نستخدمها استخدام عملي نحو بناء المشروع بتاعنا الظريف المشروع اللي عايزين نعمله واللي هنتعلم من خلاله ان انت كمبرمج لازم تفكر بطريقه معينه ايه هي الطريقه المعينه دي ان انت عندك هدف عايز توصل له الهدف ده انت بتفكر فيه كانه مشكله مش هدف المشكله الواحده بتكسرها المشاكل اصغر عشان تعرف تترجم كل مشكله الصغيره لشويه اكواد تحل لك المشكله دي بعدين تنقل على المشكله اللي بعديها وهكذا احنا كبني ادمين مش دي الطريقه اللي بنفكر بيها قوي يعني يعني انا مثلا لو قلت لك دلوقتي قوم من على مكانك افتح الباب هتقوم تفتح الباب مش هتفكر ده ازاي بيتعمل مش هتقول اه ده هدف فتح الباب ده هدف صعب جدا ازاي محتاج اقعد اكسره لمشاكل اصغر محتاج افكر انا قاعد ولا واقف طيب لو انا قاعد على الكرسي محتاج اقف لو انا كنت واقف يبقى خلاص تمام طب لو انا اصلا واقف انا اتجاهي للباب ولا في اتجاهاني طيب لو انا في اتجاه اني محتاج ادور نحو الباب وبعدين لما ادور نحو الباب محتاج ابتدي امشي طب هفضل امشي لحد امتى لحد ما اخبط في الباب او لحد ما اقرب من الباب بمثلا نص متر طيب لما اقرب من الباب بنص متر هعمل ايه؟ اه محتاج اشوف الباب اصلا مفتوح ولا لا طب ما هو لو مفتوح مش هفتحه طب لو مقفول هتفتحه يعني ايه افتحه ده كده الكمبيوتر اللي بيرد ها يعني انت محتاج تمد ايدك تشوف فين الاكره وبعدين تمسك الاكره وبعدين تنزل ايدك لتحت بالشكل ده وبعدين تشد عليك كل دي مشاكل مشاكل صغيره صغيره لو انا ببرمج روبوت انه يفتح الباب لازم اقول له كل تفصيله صغيره وكل قرار ياخده ويشوف هل ياخد القرار القرار ده امتى وينفع ياخد القرار ده دلوقتي ولا لا كلها تفاصيل مشاكل صغيره لازم انا ابرمجها بنفسي لكن الانسان قوم افتح الباب خلاص بسيطه عم انت معقد الدنيا ليه الكمبيوتر مش كده عشان كده هنشوف دلوقتي لو انا عايز ابرمج اله حاسبه كالكليتور زي اللي بتحسب عليه بتمسكه في ايدك زي الابلكيشن اللي بتفتحه في الموبايل عشان انت ايه بطلت تستخدم مخك فبقيت مش عارف تعمل عمليات حسابيه بسيطه فبتضطر انك انت تفتح الكالكليتر عايز ابرمج انا الكالكليتر ده طيب لو انا بفكر في استخدام الكالكليتر وبقول لك 5 + خ كام فانت ما بتفكر فكرش محتاج تعمل ايه؟ انت بتكتب 5 + 5 يساوي كذا طيب لو مسكنا بقى كل دول بتفصيله كده منهم صغيره هلاقي ان انا لما بقول لك اعمل 5 + 5 فاول خطوه ان انت بتدخل اول رقم اللي هو الخمسه ده انبوت فيرست نمبر يتم ادخال اول رقم تمام بعد ما بتدخلاني اول رقم بتشوف انت عايز تعمل ايه عايز تعمل عمليه جمع ماشي فبتقول مثلا انبوت اوبريتور اوبريشن الاوبريتور ده اللي هو العلامه سواء جمع طرح قسمه بالشكل ده او ضرب فانا بدخل اول رقم بدخل الاوبريتور الحاجه اللي انا هستخدمها جمع طرح قسمه ضرب وبعدين هعمل ايه تاني رقم صح رقمين بعمل بينهم عمليات فانبوت سكند نمبر وبعدين اخيرا ايه اللي بيحصل بتدوس يساوي عشان يطبع لك النتيجه عشان نشوف النتيجه فبعدين اخر خطوه برنت ريزلت فانا كده لما جيت افكر ان انا برمج كالكليتور فكرت في المشاكل اللي عندي كسرت المشاكل دي لخطوات صغيره عشان اقدر انفذ كل خطوه منهم عشان اوصل لهدفي النتيجه بتاعتي ابقى حليت المشكله وهي ان انا بقى عندي التطبيق بتاع الكالكليتور ده اي حاجه هتبرمجها هتفكر فيها بالطريقه دي هي دي طريقه تفكير المبرمج تكسير المشاكل الى مشاكل وخطوات اصغر وبعدين نبدا نترجم كل واحده لكود طيب اول مشكله عندي هنا ان انا محتاج اخد مدخل من المستخدم محتاج ان هو يدخل رقم هل في حاجه في بايثون في لغه البرمجه اللذيذه هذه بتطيح ان انا اعمل اعمل كده انا شفت ازاي انا ممكن اطبع حاجه باستخدام برنت في فانكشن بيطبع طب هل في فانكشن وظيفه بتستقبل هقول لك اه والحسن حظك اسمها انبوت بالشكل ده وبتشتغل عن طريق ان احنا نفتح قوسين بالشكل ده طب انت عارف كمان ان انبوت دي فيها ميزه لذيذه جدا زي برنت ان هي كمان ممكن تطبع رساله للمستخدم عشان تقول له ايه المطلوب اللي هو يدخله عشان تدي له اي معلومه عن المفروض هو يعمل ايه فانا ممكن جوه انبوت دي افتح علامات تنصيص لان اتفقنا ان الرساله النصيه دي نوع من البيانات اللي هو سترينج واقول له هنا انتر فيرست نمبر وبعدين اعمل نقطتين كده وسبيس عشان اسيب له مكان يكتب الرقم واعمل ران بالشكل ده هلاقي ان طلع لي رساله بتقول لي انتر فيرست نمبر جميل خمسه خلاص البرنامج خلص ليه البرنامج خلص عشان انا ما عنديش حاجه تانيه كل الباقي دول كومنتس حاجات مش بتتنفذ طيب يبقى انا حليت كده اول مشكله جزئيا خلينا نشوف كده انا محتاج احل تاني مشكله بان انا اخد الاوبريتور فممكن استخدم نفس الانبوت دي ولكن اغير السترنج اغير قيمه السترنج اغير الرساله ممكن اقول له انتر اوبريتور ماشي بالشكل ده كده وبعدين ممكن اعمل نفس الكلام هنا بالنسبه للرقم الثاني ممكن اخد دي كوبي كده برض اختصارا للوقت نسخ واعمل لها بيستق واقول له انتر سكند نمبر ادخل الرقم الثاني فدلوقتي لو انا عملت ران هيقول لي انتر فيرست نمبر هقول له خمسه انتر اوبريتور هقول له زائد عايز اعمل عمليه جمع انتر سك نمبر هقول له 10 عايز اجمع الخمسه على 10 هدوس انتر مش هيطلع لي اي حاجه ليه منطقي ما انا لسه ما طبعتش النتيجه ما نفذتش اخر خطوه طب انا دلوقتي قدام مشكله عويصه يعني انا دلوقتي عارف ان انا لو عايز اطبع بقول برنت بس انا هطبع ايه يعني ايه اللي ممكن استخدمه من هنا عشان اطبعه انا عايز استخدم نتيجه جمع الرقمين دول بس انا باخد المدخل وبعدين مش بعمل بيه حاجه مش بخزنه في حته فمش قادر ان انا ارجع تاني صح هنا يجي ايه اللي اتعلمناه من شويه الفريبل محتاج درج افتحه ارمي فيه الرقم الرقم اللي انا اخدته هنا ده الخمسه اللي رجعلي من الفانكشن بتاع الانبوت الفانكشنز الوظائف دايما بتعمل حاجه اسمها ريتيرن بترجع حاجه معينه فالانبوت بيرجع ايه بيرجع المدخل اللي انا دخلته البرنت بيرجع ايه بيرجع الحاجه اللي انا بطبعها طيب الخمسه دي اللي هترجع من الانبوت انا ما حطيتهاش في حته فمش هقدر ان انا استخدمها بعد كده لكن لو انا خزنتها ها في بل يعني لو جيت قلت فيرست اندر سكور نمبر عملت يابل معبر عن معناه اديته اسم معبر عن معناه وبيتكون من كلمتين فعارف ان انا ما ينفعش اعمل سبيس مثلا لكن ينفع اعمل اندر سكور وخزنت فيه الحاجه اللي هترجع من هنا اللي هي الخمسه دي يبقى اقدر ان انا بعد كده استخدمه صح كلام جميل نفس الموضوع في الاوبريتور ممكن اجي هنا اعمل اريابل بل اسمه اوبريتور بيساوي اللي هيرجع من الانبوت فانكشن ده اللي هو العلامه دي ايا كان العلامه اللي انا هدخلها او القيمه اللي اليوزر هيدخلها هنا ونفس الكلام بالنسبه للرقم الثاني ممكن اقول سكند اندر سكور نمبر يبقى انا عملت ايه عملت ادراج في الذاكره عملت اماكني بلز في الذاكره بتاعه البرنامج او بتاعه الكمبيوتر عملت يابلز اقدر ان انا اخزن فيها القيم اللي بترجع من الفانكشنز دي عشان اقدر بعد كده انده على الفييابلز دي واستخدم القيم دي اقول اه انا عايز ابص كده على اللي في الفيرست نمبر الدرج اللي اسمه فيرست نمبر عايز افتحه ابص عليه هلاقي جواه خمسه بعدين عايز افتح الدرج بتاع اوبريتور افتحه ابص ايه اللي جواه هلاقي جواه زائد بعدين افتح الدرج ده هلاقي 10 اخد بقى كل القيم اللي انا فتحتها من الادراج دي احطها مع بعض بشكل معين بحيث ان انا يطلع لي النتيجه اللي انا عايزها عايز اشوف بقى نتيجه الجمع بتاعه الارقام دي طب انا عندي هنا مشكله عويصه جدا فكرت فيها معايا دلوقتي لو انا عايز اطبع النتيجه يعني انا لو جيت قلت مثلا فيرست اندر سكور نمبر بلس سكند اندر اندر سكور نمبر ممكن اعمل كده صح ولكن انا كده هبقى انا برمجت بنفسي في البرنامج العمليه اللي هتتم ما استفدتش حاجه ان اليوزر هو اللي ادخل العمليه يعني ما استفدتش حاجه من سطر الكود ده اللي انا بطلب من اليوزر فيه انه يدخل سيمبول معين او رمز معين عشان على اساسه اقوم بالعمليه الحسابيه طب اعالج المشكله دي ازاي ازاي استفيد بالسطر الكود ده ان انا ابقى عارف اليوزر دخل ايه وعلى هذا الاساس يتغير مسار البرنامج بتاعي بتاعي يعني لو كان زائد يبقى هجمع الرقمين لو كان طرح وانا اقصد ايه استرس في اللو او اضغط على اللو عشان هتفهموا ليه دلوقتي لو كان طرح يبقى اطرح الرقمين لو كان قسمه يبقى اقسم الرقمين لو كان ضرب يبقى اضرب الرقمين اللو دي بتغير مسار البرنامج بتاعي اللي هو ايه اللي هو النتيجه اللي هتطلع في الاخر هل هي هتطلع جمع الرقمين ضربهم ا قسمه ايه في حماس جدا عايز اعرف النتيجه هتطلع ايه ولكن ازاي اغير المسار ده ازاي ازاي اشوف ايه اللي تم اختياره؟ جه عندنا حاجه جميله جدا بقى في البرمجه اسمها الكونديشنال ستيتمنتس الادوات الشرطيه في شروط معينه واشوف على اساس الشروط دي ايه اللي منهم هيتحقق هنفذ كود معين هغير مسار البرنامج طب الشروط دي بتتكتب ازاي لو بكتب اف لو ايه اللي انا عايز اشوفه انا عايز اشوف لو القيمه اللي تم حفظها جوه المتغير اللي اسمه اوبريتور دي بتكون زائد ولا طرح ولا قسمه ولا ضرب ايه نوع العمليه فعايز اسال اف اوبريتور لو الاوبريتور بيساوي وهنا استخدمت ايه اثنين ايكوال عشان هعمل مقارنه هسال بيساوي ولا لا وبعدين علامه الزائد مثلا ليه حطيت علامه الزائد في علامات تنصيص ليه ما قلتش بيساوي زائد كده على طول لان الانبوت فانكشن دايما اللي بيرجع منه اي حاجه بكتبها هو بيفهمها كسترنج زي ما اللي بيدخل له سترينج اللي بيرجع منه برده دايما هيكون سترينج فعشان كده لو انا دخلت هنا علامه الزائد فاكن اللي حصل هنا بالظبط ان اتحط جوه الاوبريتور علامه الزائد جوه سترنج بالشكل ده اتحط قيمه سترنج جواها علامه الزائد فانا لو عايز اسال لو ده اللي حصل ولا لا لو الاوبريتور جواه او بيساوي سترنج البلس ولا لا لازم اعملها بالشكل ده طبعا قصدي بالشكل ده طبعا انا عايز ارجع بس هنا الكود ده عشان ما يبصش بالشكل ده كنت بس بستعرض لكم ايه اللي حصل فهنا ما انساش ان انا احط البلس جوه علامات تنصيص سواء سينجل كودس او دبل بالكوتس مش مشكله الاتنين شغال طب سالت اول سؤال لو الاوبريتور زي ما قلت بيساوي زائد والبيساوي دي دايما في الاف بتتعمل باتنين ايكوال مختلف خالص عن الايكوال اللي واحده الايكوال اللي واحده في البرمجه ترجمتها الحرفيا مش ايكوال ترجمتها الحرفيه مش يساوي ترجمتها الحرفيه ان انا بعين قيمه معينه من هنا بحطها جوه الفرييابل ده بقول ان الفرييابل ده هيكون جواه القيمه اللي على اليمين هنا دي فدي معناها اساينمنت اوبريتور الايكوال الواحده دي في البرمجه اسمها اسينمنت اوبريتور مشغل التعيين لو عايزينها يعني ايه ترجمه حرفيه لكن الاتنين ايكوال معناها ان انا بشوف بعمل مقارنه بشوف ده بيساوي ده ولا لا ولازم لما اعمل مقارنه بين حاجتين يكونوا الحاجتين نفس الداتا تايب نفس نوع البيانات يعني اقارن سترينج بسترنج عادي ما هو ده سترينج اسمه بلس واللي جوه هنا هيبقى برض سترنج سواء بلس او ماينس او ديفيجن او ملتيبليكيشن لان اللي بيرجع من الانبوت دايما اللي هو بيتخزن جوه هنا اللي هو هنا دايما هيكون في شكل سترينج فما ينفعش مثلا تقارن تفاحه ببرتقانه لا تقارن تفاح بتفاح برتقان ببرتقان نفس الكلام في البرمجه سترينج بسترنج اللي جوه الفييابل ده هيكون سترينج لان اللي بيرجع من الانبوت سترينج انا دلوقتي سالت السؤال اللو طب لو اللو دي اتحققت اعمل ايه فعشان ابتدي اشوف هعمل ايه بحط كده بعد ال بعد الشرط بتاعي نقطتين وبدوس انتر بلاقي ان السطر اللي هيتكتب جوه الاف ده معمول له اندنتيشن يعني ايه يعني مش بادئ من اول السطر دي قاعده مهمه في بايثون ان انا في حاجات بعمل فيها اندنتيشن بسيب فيها مسافه لو في حاجه هتتكتب جوه اف فلازم اسيب المسافه دي اللي هي عباره عن ان انا بدوس زرار التاب او بعمل اربعه سبيسز بالشكل ده كده طبعا ده بيتعمل بشكل اوتوماتيكي لو انت بتستخدم محرر اكواد بالشكل ده هو بيعمل لك الموضوع ده بشكل اوتوماتيكي لو انت فتحت ايف كونديشن مثلا او كده لكن لو انت ماتعملش بشكل اوتوماتيكي فهنا اوتوماتيكي دي باظت خالص فهنا بتدوس تاب اللي هي فوق زرار الكابس لوك في الكيبورد والكابس لوك فوق الشيفت في الكيبورد عشان برده ايه ما تته تهش مني لو انت مش عارف طب ايه اللي انا عايزه يتنفذ حرفيا لو المشغل او الاوبريتور كان علامه الزائد عايز بقى اطبع النتيجه اطبع ان انا اقول اروح ابص في الفيرست نمبر اشوف جواه ايه واعمل عمليه الزائد مع او عمليه الجمع مع السكند نمبر ساعتها لو انا عملت كده ما فيش مشكله لان انا عارف ان الشرط ده هو اللي اتنفذ فهستخدم عمليه الجمع طب ماذا لو في عمليه ثانيه تم ادخالها هنا عندي حاجه ثانيه اسمها الاف ال اف اختصار اف اللي هو بالظبط لو حصل حاجه تانيه ايه الحاجه الثانيه دي الشرط الثاني ان الاوبريتور يكون بيساوي مثلا علامه الطرح بالشكل ده ساعتها هعمل ايه ساعتها لا عمليه طبع النتيجه هتختلف تماما هتبقى الرقم ده والرقم ده مطروحين من بعض طيب هل ممكن اقعد احط شروط زي ما انا عايز اه ممكن تقعد تستخدم الاف دي اي عدد مرات بعدد الشروط اللي عندك انا عندي هنا اربع شروط فهستخدمها اربع مرات لو العمليه قسمه فيبقى اللي انا عايز اعمله هنا قسمه صح لو العمليه انا بس عمال ايه اعمل كوبي بيست صح واغير الحاجات لو العمليه ضرب يبقى اللي انا عايز اطبعه ناتج ضرب الرقمين في بعض نظريا المفروض كده كله عندي تمام تيجوا نراجع على الكود كده سطر سطر بما ان الكود بيتنفذ سطر سطر هلاقي ان انا بعمل هنا متغير يابل اسمه فيرست نمبر بعمله عشان احفظ فيه القيمه اللي بترجع من هنا عشان اقدر بعد كده استخدمها صح طب القيمه اللي بترجع من هنا دي ايه او هنا ده بيعمل ايه والله ده انبوت فانكشن وظيفه بتاخد مدخل وكمان بتقدر تتحلي لي ان انا اعرض من خلالها سترنج عشان اليوزر يبقى عارف هو المفروض يدخل ايه طبعا الرساله دي انا ممكن اكتب جواها برده اي حاجه يعني انا لو كتبت حماده هنا مش هيحصل مشكله صح لو كتبت حماده بالشكل ده هو هيقول لي حماده تمام بس انا مش فاهم ايه حماده يعني ايه ده شفتوا شكل البرنامج اختلف خالص ازاي حاجه متخلفه لكن بايثون ما عندوش اعتراض ده مش سينتكس ايرور ده مش خطا في طريقه كتابه اللغه انا كتبت سترينج والانبوت بياخد سترينج بيعرض الاسترين رينج لكن المفروض انا ابقى ذكي اعمل تجربه مستخدم جيده افهم المستخدم انا عايز ايه فاقول له انتر يور انتر فيرست نمبر ف ده اللي بيحصل هنا وده اللي بيحصل مع الاوبريتور بعمل متغير تاني بخزن فيه القيمه او السمبول اللي هيرجع عشان اعرف ايه العمليه اللي انا هعملها ونفس الكلام بالنسبه للسكند نمبر عشان اخد الرقم الثاني وبعد كده بسال سؤال هيغير مسار البرنامج هيغير نتيجه البرنامج اف لو اللي متخزن جوه الاوبريتور ده بيساوي علامه الزائد يبقى اطبع لي ايه؟ روح بص على اللي في الفيرست نمبر اللي في الدرج ده قيمه معينه ضيفها او زودها على اللي في السكند نمبر وبايثون او الكمبيوتر زكي كفايه ان هو يفهم العمليات الحسابيه دي الزائد والطرح والقسمه والاستركس ودول يختلفوا جدا عن دول خلي بالك ان دي كده تعتبر سترينجز صح دي سترينجز انما دي ارثماتيك اوبريشنز دي عمليات حسابيه بلت ان موجوده في بايثون هو بيفهمها وبيعرف يعملها فعلى اساس الشرط بتاعي هشوف ايه السطر اللي هيتنفذ بالمناسبه لو في شرط اتحقق بتجاهل بقيه الشروط مش ببص عليها اصلا وبتخطى البلوكايه بتاعه الايف دي كلها ولو في بعديها سطور كود بروح انفذها يعني ايه؟ يعني لو الاوبريتور اللي اليوزر دخله طلع علامه الزائد فانا بخش جوه الشرط ده ماشي وانفذ اللي موجود هنا وبعدين بتجاهل كل دول ما ببصش اصلا في بقيه الشروط طب لو الشرط الاول ماتحققش ببتدي ابص في الشرط الثاني لو اتحقق بنفذ اللي جواه وما ببصش اصلا في بقيه الشروط ان ده انا بحط نفسي مكان بايثون يعني طب لو الشرط الاولاني ماتحققش والثاني ماتحققش ببص في ثالث شرط اتحقق بنفذ ده وما ببصش في اللي فاضل وهكذا ما هو ممكن يبقى عندي برنامج فيه بقى ايه 1000 شرط ورا بعض براحتي ما فيش مشكله المهم كده نظريا فهمنا ايه اللي المفروض يحصل تعالوا بقى عمليا نشوف الكلام ده هيطلع عامل ازاي فخلونا نجرب نجمع خمسه مع خمسه هقول 5 + 5 ايه ده 55 اا ايه الاله الحاسبه اللي يعني فيها بركه دي بتزود من عندها هو في حاجه اسمها كده مش خمسه يا عم اسلام زئ خمسه المفروض يديني 10 ايه 55 دي هقول لك اه هنا يبان بقى يا باشا انت مركز ولا لا وايه يخليني كمان اديك معلومه حلوه قوي فاكر لما انا قلت لك ان الانبوت زي ما اللي بيخش جواها هو سترينج دايما اللي بيرجع منها بايثون بيفهمه كسترينج هتقول لي اه فاكر بس مش فاهم حاجه هقول لك بالراحه طالما دايما اللي بيرجع من الانبوت سترينج وانت دخلت هنا خمسه يبقى اكن اللي اتحط في الفيرست نمبر بالشكل ده علامات تنصيص جواها خمسه فاكر لما طبعنا لما عملنا برنت بالشكل ده لخمسه وبعدين عملنا برنت لخمسه بالشكل ده وقلت لك في فرق بينهم دي نوع بيانات ودي نوع بيانات ده رقم انتجر الرقم اقدر اعمل عليه عمليات حسابيه سواء هو انتجر او فلوت رقم عشري او رقم في كسور لكن السترينج العمليات الحسابيه فيه مختلفه واللي بيرجع من الانبوت دايما سترينج فانا اكني هنا الخمسه دي اللي رجعت من اول انبوت عباره عن سترينج اتخزن في الفيرست نمبر واكن السكند نمبر اللي رجع من هنا برضو بما ان انا دخلت 5 عباره عن سترينج ماشي خمسه طب هل في بايثون اقدر اجمع السترنجز على بعض اه بس اللي بيحصل بيكون مختلف الجمع هنا مش بيكون عمليه حسابيه الجمع هنا بيكون ان انا الزقهم في بعض فده اللي حصل هنا بالظبط لما انا رحت عند اللو سالت هل الاوبريتور بيساوي زائد قال لي اه بيساوي زائد قلت له طب اجمعهم لي على بعض هو ما يعرفش ان دول ارقام هو بالنسبه له ده متغير بيروح يبص ايه اللي جوه المتغير غير ده لقاه سترنج بخمسه وراح بس جوه المتغير ده لقى سترنج بخمسه راح جمعهم على بعض هو تعامله في عمليه الجمع مع السترينجز ان هو يلزقهم في بعض لذلك طلع لي 55 طب نرجع دي تاني بالشكل ده نمسح دول كده فهمنا الفكره دي ونرجع دي بالشكل ده ونجرب بحاجه ثانيه يعني نجرب مثلا 10 لو انا دخلت هنا 10 ودخلت هنا جمع ودخلت هنا 10 انا فهمت ان ال 10 دي راجعه كسترنج مش كانتجر صح فلما جمعتهم على بعض لزقهم في بعض 10 ملزوقه في ال اهي 10 ملزوقه في ال على فكره لو انا دخلت حاجه بقى كلام يعني اي اس مثلا زائد cي يبقى اللي راجع من هنا ايه اللي اتخزن هنا ايه هو سترينج اي اس بالشكل ده صح واللي رجع من الفانكشن دي ايه هو سترنج co ولما جمعتهم مع بعض لما جمعت اللي جوه المتغير ده مع اللي جوه المتغير ده ايه اللي حصل لما جمعت دول الجمع في السترنجز بيعمل ايه بيقولنا بيلزق الاسترنجز في بعض فطلع لي اسكو زي ما انتم شايفين كده فكده انا بقى عندي مشكله وطبعا انا لو جربت بقى اعمل ده في الطرح مثلا يعني انا لو حتى خليني بس الاول ايه اعمل كلير وارجع دي انبوت رجع دي بالشكل ده انبوت وجيت جربت اعمل خمسه اللي هي دلوقتي مقروءه كسترنج واطرح منها خمسه اللي هي دلوقتي مقروءه كسترنج هيطلع لي ايرور اصلا يعني السترينز ممكن اجمعها او اجمعهم مع بعض وده اللي بيحصل ان هم بيلزقوا في بعض لكن ماقدرش ان انا اطرحهم من بعض هلاقي بقى نوع جديد خالص من الايرور فين في السطر ال 14 هنا طب ليه في السطر ال 14 تعالوا نمشي واحده واحده هنا اخدت مدخل تمام هنا اخدت مدخل تمام هنا اخدت مدخل بعدين رحت هنا في السطر ال 11 هل الاوبريتور زائد لا الاوبريتور مش زائد يبقى اصلا مش هقرا السطر ده هقرا السطر اللي بعديه هل الاوبريتور طرح يبقى اه الاوبريتور طرح يبقى اخش انفذ السطر ده اللي هو السطر ال 14 وانا بنفذ السطر ال 14 البرنامج هيتف في وشي سوري قصدي هيضرب في وشي هيقول لي ايرور تايب ايرور نوع خطا في النوع تعالوا نقراه را مع بعض ان سبورتد اوبرند تايب فور العلامه دي الاوبند ده اللي هو المشغل اللي هو العلامه دي ان سبورتد يعني غير مدعوم لا يوجد دعم للتايب بتاع سترنج مع سترنج في العلامه دي ماقدرش ان انا اطرح سترنج مع سترنج طالما انت بتستخدم الاوبرند ده او الاوبريتور ده المشغل بتاع علامه الطرح ماقدرش انا ادعم العمليه دي مع سترنجات وكده انا عندي مشكله عويصه لو الطريقه اللي باخد بيها مدخل دايما هترجع سترنج يبقى انا كده ما ما حدش عارف يعمل كالكليتور في الحياه يعني المشروع كله باظ اقول لك لا استناني بقى هنا عندي وظيفه جميله وهتعجبك جدا وظيفه بتعمل ايه بتحول من نوع بيانات لنوع اخر يعني ايه يا باشا الكلام ده تعال كده نطلع فوق شويه ونيجي هنا نعمل ايه اريابل اسمه تست التست ده هحط جواه خمسه ولكن خمسه كنص سترينج بالتالي لو انا عايز اتاكد يعني من النوع فهقول برنت وبعدين هقول تايب التايب بتاع الفرييابل اللي اسمه تيست ده لو عملت ران هيطلع لي ايه هيقول لي ده اس تي ار ده سترنج يبقى انا كده اتاكدت طب لو انا جيت دلوقتي وعملت متغير تاني سميته انت ت تست وقلت انت تستوي ايه بيساوي التست اللي فوق ده ولكن مش لوحده كده انا هحطه جوه وظيفه تانيه فانكشن تاني اسمها انت فانكشن انت دي مسؤوله عن ايه مسؤوله عن ان هي تاخد القيمه اللي جواها لو القيمه دي كانت في شكل رقم ولكن الرقم ده سترينج وتحولها لانتجر فانا دلوقتي لو جيت قلت برنتيب بتاع الانتدر سكور تست وعملت ران هلاقي ان هي كانت سترينج وبعدين بقت انتجر في حين ان هم شكلا هيبقوا واحد يعني انا لو حبيت اطبع اطبعها بعديها تعالوا نطبع كده برنت التست ماشي وهنا نعمل برنت للقيمه نفسها مش للنوع دلوقتي انت اندر سكور تست لو عملت ران هلاقي ايه اللي حصل النوع اس تي ار اللي هو بتاع تيست اللي هو هنا اللي انا بشوفه لما طبعته اهو سترنج شفت نوعه طبعته شفت نوعه طبعته لكن هنا عملت حاجه مثيره للاهتمام عملت متغير جديد جوه المتغير الجديد ده رحت ندهت على المتغير القديم بصيته للفانكشن او حطيته جوه وظيفه بتعمل ايه؟ بتحول السترنجز الارقام بعدين رحت اشوف نوع القيمه اللي جوه المتغير ده قال ان هي انتجر وبعدين لما طبعتها طبعت القيمه اللي جوه المتغير ده طلع معايا الخمسه اللي هي في شكل انتجر دلوقتي طب لو كانت الخمسه دي مكتوب مثلا كودزيلا وحاولت ان انا احول قيمه كودزيلا دي لانتجر تيجوا نعمل رانك ونشوف ايه اللي هيحصل اه اداني ايرور وايرور من نوع جديد ولكن خلينا الاول نمشي سطر سطر زي ما البرامج في بايثون بتشتغل سطر سطر مبدئيا طلع لي كلاس اس تي ار قبل ما البرنامج يضرب ده اللي هو ايه ده نتيجه طبع النوع بتاع تيست تست دلوقتي جواه سترنج جواه نوع من البيانات سترنج كودزيلا فهو بيقول لي اهو جواه سترينج ولما حبيت اطبع القيمه اللي جوه الدرج ده اللي هي كودزيلا طبعالي مافيش مشكله حبيت بقى اجي هنا اعمل حاجه تانيه احول قيمه كوتزيلا اللي جوه التست دي لانتجر هنا بقى ضرب وحصل ايرور في الفايل اللي اسمه مين دوت باي تمام في السطر الخامس في المحاوله البائسه اللي انت حاولت تعملها دي حصل فالو ايرور ده نوع ايرور جديد خطا في القيمه خطا في الفالو انفاليد ليترال فور انت انت الوظيفه الفانكشن اهو اللي انت بتحاول تستخدمه انت ده ما ينفعش تحط له قيمه بالشكل ده لازم القيمه تبقى ببيز عشري بيز 10 دي يعني بيز عشري يعني لازم القيمه يبقى اساسها رقم ما ينفعش ان انت تحاول تدخل حروف وتحولها لرقم لكن لو انت اصلا السترنج ده متكون من ارقام بالشكل ده يبقى ساعتها ما عنديش مشكله مش طلع لك ايرور مش طلع لك خطا في القيمه فالو ايرور لا هشتغل وكله زي الفل وهحول لك يا باشا السترنج ده لرقم واحل مشكله يبقى كده زي الفل عرفنا ايه الحل بتاع المشكله ان انا اللي بيرجع من الانبوت اللي عباره عن سترنج ده اخده اقفشه اخليه رقم صح طيب يبقى نمسح الكلام ده كله دلوقتي ونروح نعالج بقى المشكله في البرنامج بتاعنا ممكن اعمل كده بطريقتين ممكن زي الطريقه اللي انا لسه مستعارضها ان انا اعمل مثلا انت فيرست نمبر اعمل متغير جديد خالص تمام واقول ده بيساوي ايه؟ بيساوي ان انا هاخد الفيرست نمبر ده ماشي واحطه هو جوه وظيفه الانت جوه فانكشن الانت بالتالي لما انا اعمل ران واول سطر يشتغل اللي هو بيطلب مني مدخل المدخل ده هيرجع هنا على شكل سترنج هيتخزن السترنج ده هنا فخلينا نعمل كومنت كده نستوضح بيها لو انا مثلا هنا كنت دخلت 55 فدلوقتي هيبقى عندي اريابل الفيرست نمبر لو بصيت جواه هلاقي ايه؟ هلاقي سترينج 55 صح ده اللي حصل بالظبط من السطر ده بناء على المدخل بتاعي طيب لو انا بقى ايه جيت نفذت السطر ده يبقى اكني بعمل ايه اكني بقول كده ان دلوقتي الاندر سكور فيرست نمبر وخليني اعملها كومنت بالشكل ده هيساوي الانت بتاعه ال 55 لان الفيرست نمبر جواه 55 وانا بقول انت فيرست نمبر يبقى الانت بتاعه ال 55 دي هترجع لي ايه؟ هترجع لي ثواني هترجع لي بالشكل ده رقم 55 يبقى اللي هيتخزن في الاخر جوه الاندرست نمبر هيكون رقم انتجر 55 فممكن اعمله بالطريقه دي ماشي هيشتغل مافيش مشكله واعمل ده بقى بالنسبه للسكند نمبر برضو طبعا مش هعمل ده بالنسبه للاوبريتور لان الاوبريتور عباره عن سيمبول عباره عن رمز انا عايزه يفضل سترنج زي ما هو عشان انا بعمل المقارنه هنا ما بين سترنجات برض بالشكل ده بشوف هل هو السترنج بتاع الزائد بتاع الماينس بتاع الديفيجن بتاع المالتيبليكيشن وهكذا فالاوبريتور مش هغير فيه حاجه انا عايز اللي يرجع من هنا سترنج زي ما هو انا المشاكل كانت عندي في الارقام فممكن احل المشكله بالطريقه دي او بما ان انا لو فاكرين قلت ممكن احط وظيفه جوه وظيفه فانكشن جوه فانكشن فممكن كل الانبوت دي احطها جوه انت جوه الانت فانكشن اللي هو بيحول ده صح ممكن اخدها كده واحطها زي ما انتم شايفين جوه الانت فانكشن فكده اللي هيرجع من الانبوت السترنج اللي هيرجع من الانبوت فالنقل ان هو ال 55 اكني كده خدته حطيته جوه الانت بالشكل ده فاكنه في الاخر اتحول بقى 55 فاللي اتخزن جوه الدور برج هو في الاخر الفالو بتاع ال 55 ده فانا كده ابقى انا حليت المشكله نرجع بقى الكود زي ما هو ونخلينا بالطريقه دي لان الطريقه دي بتختصر عليا ان انا اعمل اريابلز جديده استخدم اماكن من الميموري زياده وانا مش محتاج اعمل كده ممكن احل المشكله بهذه الطريقه فخلينا نحل المشكله بهذه الطريقه في الفيرست نمبر ونحلها بهذه الطريقه في السكند نمبر كل اللي انا محتاج اعمله احطه احط الانبوت اللي بيرجع جوه انت بالشكل ده عمليه تحويل من داتا تايب للثاني من نوع بقى بيانات للتاني اسمها تايب كاستنج عشان برض تبقوا عارفين التيرم ده تايب كاستنج وعمليه لزق او جمع اثنين سترينجز مع بعض اللي احنا عملناها من شويه فاكرين لما عملنا بالشكل ده المشكله اصلا اللي احنا بنحاول نحلها لما عملنا سترنج خ زائد سترينج خي ايه طلع لي 55 العمليه دي لما بجمع سترنجين مع بعض اسمها سترينج كون سترينج كونكاتينشن بالشكل ده لما بجمع تو سترينجز مع بعض سواء بقى ايه ايا كانت القيمه اللي جوه الدبل كودس او الستينجل كودتس ده اسمه سترينج كونكاتينيشن ماشي لما بحول من قيمه من من داتا تايب معين لداتا تايب تاني ده اسمه تايب كاستنج وهو ده بالظبط اللي انا عملته هنا كده وهنا كده طيب نظريا لو شغلت البرنامج بتاعي هل هيشتغل ولا هيكون في مشاكل ولا ايه الدنيا تعالوا نشوف مع بعض تعالوا دلوقتي نكتب نفس الخمسه زائد 5 الله اكبر طلع لي 10 ولكن سيدي العزيز ليست كل النهايات نهايات سعيده لازم اطلع لك حاجه تبوظ لك المشروع بتاعك عشان اعلمك من خلالها حاجه جديده انا دلوقتي طلبت ان السترنجز تتحول لانتيجرز ارقام عشريه ماذا لو انا استخدمت ارقام فيها كسور ان ان يعني ايه يعني ما انت في الكالكليتر بتاعك مش لازم تستخدم بس ارقام عشريه انتجرز ممكن تقول لي يا عم عايز اعمل 10 ونص ماشي بالشكل ده شفت اول ما دوست انتر مش لاحق حتى ادخل الاوبريتور طلع لي ايرور وضرب في وشي قال لي ايه؟ قال لي باشا في السطر الثاني مالحقناش اصلا في السطر الثاني ده اللي هو اصلا ايه اول سطر بيتنفذ عشان السطر الاولاني كومنت فقال لي كده بسم الله الرحمن الرحيم ايرور مش هقبل حاجه منك ايرور ايه شفناه قبل كده valو ايرور خطا في القيمه انفالد ليترال فور انت وذ بيس 10 اه ما احنا شفنا الموضوع ده قبل كده هو ماارفش يحول السترنج اللي على شكل فلوت لانتيجر طب ايه اللي تفتكره ممكن يقبل حاجه زي كده فاكرين مش احنا مش ده مش احنا عندنا ديتا تايب اسمه فلوت اللي هو بيقبل الارقام اللي فيها كسور فممكن اعمل تايب كاستنج بدل ما هعمله الانتجر اعمله لفلوت فبس هغير الانت دي اخليها فلوت انا برض عندي الفانكشن بتاع فلوت ده بيقدر ان هو يستقبل السترنج اللي على شكل فلوت رقم فيه كسور ويحوله لفلوت يتعامل معاه كرقم عادي جدا وعشان الفلوت زي الانتجر بيقدر يعمل عليه العمليات الحسابيه عادي وده اللي انا متوقعه في الكالكليتور بتاعي ان هو يبقى فيه فلوتس يبقى في ارقام فيها كسور فدلوقتي لو قلت 10.5 5 مش هيضرب في وشي جميل زائد يا رب تكمل على خير 10.5 فايف زيهم يبقى هيطلع لي ايه؟ هيطلع لي 21 تمام الكود زي الفل قبل معايا الارقام اللي فيها كسور طيب خلونا نتكلم في حاجه ثانيه سريعه لذيذه تحط تاتش جمالي او تاتش يحسن من تجربه المستخدم الا وهي تخيل دلوقتي لو انا عملت ران بالشكل ده وجيت قلت انترفيس نمبر 10 وجيت هزرت في الاوبريتور بدل ما انا ك واحد محترم احط بلس ماينس ديفيجن ملتيبليكيشن كتبت حماده وبعدين قلت 10 ايه اللي المفروض يطلع ماطلعش اي حاجه البرنامج ما ضربش لكن ما طلعش اي حاجه بس كون ان ما يطلعش اي كون البرنامج ما ضربش ده كويس بس كون ما طلعش اي حاجه ده مش كويس او يمكن يكون كون ان البرنامج ما ضربش ده مش كويس لان دلوقتي اليوزر مش فاهم هو ايه اللي انا بستخدمه ده حاولت اجمع 10 مع او حاولت اعمل حماده عمليه حماده 10 مع يعني ايه يعني فاهم طيب ليه ده حصل انا هنا دلوقتي في الايف كونديشن بتاعي احنا قلنا الكمبيوتر مش ذكي ما بيفكرش بيفهم حرفيا اللي انا قايله له بس فانا بعد ما باخد المدخلات بتاعتي كل اللي انا قايله روح شوف هل الاوبريتور هل القيمه اللي دخلت هنا هي زائد هي طرح هي قسمه هي ضرب ما قلتلوش لو دخل حماده لو دخل حسين لو دخلت سوسن لو دخل اي حاجه ثانيه غير النصوص دي تتعامل معاها ازاي فهو ماتعاملش هو خلاص لان ولا شرط من دول تنفذه ما فيش اي اكواد سطور كود بعد الشروط دي فخلاص ما عملش حاجه البرنامج خلص وعدى العيب بصراحه هو اللي عمل اللي عليه الغلطه من عندنا طب ممكن نصلح الغلطه دي ازاي ممكن واحد يجي يقول لي طب ما انا في الرساله بتاعتي ابقى واضح اقول له انتر اوبريتور وافتح له اقوايس كده مثلا ابين له الاوبريتورز دي ممكن تبقى ايه حاجه من دول صح بالشكل ده كده خلاص بقى عداني العيب انا بينت له ايه الاوبريتورز دي فانا لو جيت عملت ران ممكن بقى ايه اقول 10 ويجي واحد اكتب 10 كده يجي واحد ناصح قوي بص هيشوف الرساله انتر اوبريتور يدخل لي دول كلهم مع بعض يقول لي زائد ماينس قسمه جمع ضرب قصدي انتر 10 طيب ده اعمل فيه ايه ده اولع فيه لا برض انا الغلطان بايثون ما غلطش في حاجه بايثون اللي تخزن له في الاوبريتور بتاع الفرييابل بتاع الاوبريتور دلوقتي سترينج بهذا الشكل صح سترينج بهذا الشكل هو ده المدخل طب هو راح يشوف هل الاوبريتور بيساوي الكلام ده لا هل الاوبريتور بيساوي الكلام ده لا ولا شرط من دول بقول فيه اف اوبريتور بيساوي الكلام ده السترنج اللي بالقيمه دي فهو ما دخلش في ولا شرط بالتالي ما نفذش حاجه واحداني هيقول لي طب ما انا هعمل قومه هنا عشان اوضح يا عم ان انت يا تستخدم دي يا تستخدم دي يا دي يعني ايه بلاش بقى غباء صح باين قوي ان انت المفروض تستخدم واحده منهم الصراحه باين خلاص طيب انا هحترم نفسي كده 10 حماده ثاني 10 الله ده انت قصد تستفزني هقول لك اه انا يوزر مش محترم ما انا بجرب بقى انا حر هو في حد يقول لي ما تعملش المفروض ده يبقى مكتوب في الرولز يبقى مكتوب في الكود ان هو يرفض حاجه زي كده او يطلع لي اشاره ان حاجه زي كده المفروض ما اعملهاش ما انت يا عم اكتب لي التعليمات زي ما انت عايز ووضح ي انا المفروض اعمل ايه وانا هعمل حاجه تانيه خالص انا دماغي كده تمام طيب نعالج المشكله دي ازاي هقول لك في حاجه جميله جدا من ضمن عائله الاف اسمها الس دي دايما بتيجي بعد كل الشروط بتاعتي يعني دايما اول شرط بكتبه عن طريق ان انا اكتب كلمه اف وبعدين اعمل المقارنه كل الشروط اللي بعد اف مهما زاد عددها بتكون ال اف اللي هي اختصار الس اف ماذا لو ماذا لو ماذا لو طيب لما بخلص كل الماذا لو اللي عندي كل الشروط او كل المقارنات اللي عندي بيفضل عندي الس اللي هي معناها ما باليد حيله لو ولا شرط من دول تنفذ يبقى في امر معين انا عايزك تنفذه مش عايزك تسكت كده وخلاص طب في الحاله دي ايه ايه اللي انا عايز اعمله عايز اقول له لو ولا شرط من دول اتحقق ده معناه ان اليوزر ما دخلش اي علامه من العلامات دي يعني اليوزر دخل اي حاجه ثانيه ساعتها انا عايزك تقول له لا اللي انت عملته ده ما ينفعش فممكن تقول له كده رساله تطبع له تقول له انفاليد اوبريتور حضرتك بتهزر ماشي نوزلت بالتالي دلوقتي انا لو عملت ران وجيت هنا دخلت 10 وجيت هنا دخلت حماده حماده تعبناه معانا انا عارف اه انا هنا معلش دوست بس انتر من غير ما ادخل اي حاجه فعشان كده في السطر التاسع اللي هو السطر ده انا ما دخلتش حاجه الحاجه معنى ان انا ما دخلتش حاجه يعني القيمه بقت امتي سترينج ماشي في الاخر فالو عباره عن سترينج فهو ما ينفعش يحول السترنج لفلوت عشان كده طلع لي فو ايرور المهم ده خطا ما كانش مقصود بس كويس انه طلع مش مشكله المهم خلينا ندخل 10 بعدين حماده سحب معانا جامد مش تعبناه بس كده بعدين ندخل هنا 10 دلوقتي ايه اللي هيحصل؟ اه هيقول لي انفاليد اوبريتور نو ريزلت ليه؟ لان هو راح يشوف هل الاوبريتور بيساوي زائد لا مش هنفذ ده هل الاوبريتور بيساوي طرح لا يبقى مش هنفذ ده هل الاوبريتور بيساوي قسمه لا مش هنفذ ده هل الاوبريتور بيساوي لا مش هنفذ ده يبقى الس ما باليد حيله اكيد الاوبريتور بيساوي اي حاجه ثانيه غير الشروط اللي انا حاططها هنا ساعتها يبقى انا هطبع الرساله دي هقول له انفاليد اوبريتور نو ريزلت مافيش نتيجه عشان انت بتستعبط. قربنا نخلص ولكن قبل ما نعمل اخر حاجه خليني اقول لك ان انا فخور بيك جدا مبدئيا ان انت وصلت لحد هنا. انت عملت مجهود فظيع وتخيل ان انت داخل الفيديو ده ما تعرفش يعني ايه برمجه ما عندكش اي فكره وصلت ان انت تعمل مشروع متكامل وان شاء الله تكون فهمت وخدت فكره حلوه جدا واساس يخليك تبدا بعد كده تتبحر في هذا العالم الجميل اللي بيديك قوه كده مذهله مش هتحسها غير لما تبدا تتمكن منه واحده وبالمناسبه دي عشان مبسوط منك هقول لك ان انا هسيب لك في الرابط اللي موجود تحت في الوصف وفي اول كومنت خصم 60% على كورس احتراف البرمجه اللي انا عامله هتلاقي الرابط في الوصف وفي اول كومنت ولكن ابقى بص عليه بعدين عشان نكمل ونخلص المشروع بتاعنا طيب ايه اللي احنا عايزين نعمله هنا في حاجه معروفه كده كونسبت في البرمجه اسمه دراي يعني ايه دراي اختصار لدونت ريبيت او د ريبيت يور سلف لا تكرر نفسك عزيزي المبرمج ايه الحاجه اللي احنا لو بصينا في الكود عندنا هنا هنلاقي ان احنا بنكررها هلاقي ان انا عندي هنا عماله برنت محتاجه برنت عشان محتاج محتاج اعرض النتيجه بتاعه العمليه الحسابيه صح؟ اه ولكن ممكن نكتب الموضوع ده بشكل مختلف شويه ممكن نكتب الموضوع بشكل يخلينا نستخدم برنت دي مره واحده بس هتقول لي ازاي يا عم اسلام؟ هقول لك تعال اوريك تعالى مع بعض كده نيجي قبل برنت ريزلت نعمل خطوه بسيطه وهي ان احنا نستور ريزلت نخزن قيمه يعني ايه الكلام ده هقول لك بسيطه تعال نعمل اريابل اسمه ريزلت متغير درج جديد هحط فيه مبدئيا القيمه صفر او هحط فيه سترنج فاضي مش فارقه هحط فيه اي حاجه يا عم عشان ما ازعلكش هحط فيه حماده نفسه ماشي كده كده المفروض ايه نكون مبسوطين خدنا حماده حطيناه جوه الدرج طيب اللي هنعمله بقى هنا ان احنا بدل ما نطبع العمليه بتاعه جمع اول رقم مع تاني رقم احنا هنقول ان ريزلت هنا بيساوي جمع اول رقم مع فيرست اندر سكور نمبر مع كده سكند دركور نمبر بالتالي لو الاوبريتور في حاله الجمع يبقى انا هروح اغير اللي جوه الدرج ده هشيل حماده واحط نتيجه جمع الرقمين دول وهعمل نفس الكلام ده في كل العمليات اللي هنا طبعا مع تغيير العمليه الحسابيه يعني مع الطرح هخليها طرح مع القسمه هخليها قسمه مع الضرب هخليه ضرب اما بقى في الالس هنا ما باليد حيله لو لو الريزلت طلعت ولا حاجه نتيجه ان اليوزر استعبط هنا وهو بيدخل الاوبريتور يبقى هقول ان الريزلت هي اللي بتساوي هذا السترنج بتساوي هذه الرساله انفالت اوبريتور نو ريزلت طيب وبعدين بعد ما انا عملت كده هاجي هنا بكل بساطه بعد الاف بره الاف بقى خالص بره الاندنتيشنز بتاعه الاف وكل حاجه وهقول برنت ريزلت اطبع القيمه اللي جوه الدرج اللي اسمه ريزلت دلوقتي لو جيت عملت ران انترفرس نمبر 10 ئ 10 يطلع لي 20 ممتاز البرنامج شغال زي ما هو لو جيت عملت ران وخليني اعمل خطا عن عمد طبعا عارفين هنستخدم مين خلينا نستخدم سوسن المره دي نو اوفنس لو اي حد او لا اساء لو اي حد اسمه حماده او سوسن انا والله بهزر يعني ف هنقول 10 5 سوسن 10 ده ما ينفعش فهيقول لي انفاليد اوبريتور نو ريزلت فاللي انا عملته ان انا بدل ما بستدعي الفانكشن بستدعي الوظيفه بتاعه برنت كنت 30 مره هنا انا استدعيتها مره واحده بس بعد ما الشروط دي اخش اشوف ايه اللي هيتنفذ فيهم وعلى اساس ايه الشرط اللي هيتنفذ؟ انا بغير القيمه اللي جوه الدرج اللي جوه الفريابل بتاع الريزلت لو جمع فبخلي القيمه نتيجه جمع الرقمين لو لو طرح نتيجه طرح الرقمين وكذلك في القسمه وكذلك في الضرب وزي ما قلنا على حسب الشرط انا بنفذ حاجه واحده بس مش ببص على الباقي فطالما ان شرط معين اتنفذ في هذه الحاله هو شرط الالس لان ولا حاجه من دول اتحققه يبقى انا هنفذ هذا السطر بس يبقى اللي هيخش جوه الريزلت مكان حماده هي هذه الرساله النصيه هذه القيمه التي التي عباره عن سترينج وبالتالي لما هطبع الريزلت اللي جواه دلوقتي القيمه دي هتطلع لي هذه القيمه بهذا الشكل الهدف ان انا كنتخدك من الصفر لان انت تعمل حاجه بايدك وتخرج في خلال ساعه مقدمه كويسه عن مفاهيم البرمجه وتبتدي تشوف ان البرمجه مش شفرات البرمجه مش صعبه البرمجه مش محتاجه واحد عبقري في الرياضيات بل محتاجه محتاجه ان انت تبتدي تفهمها واحده واحده محتاجه واحد يفهمها لك بطريقه عمليه بطريقه بسيطه بيعكس لك اللي بيحصل على الواقع ويديك امثله وكده وساعتها هتلاقي ان فعليا اي حد ممكن يتعلم البرمجه مبروك انت كده خلصت الفيديو دوس على الرابط الموجود في الوصف وفي اول كومنت عشان تاخد خصم 60% على كورس احتراف بايثون وامتلاك قوه المستقبل but
13:23
How Id Learn Programming If I Were Starting in 2026
غريب الشيخ || Ghareeb Elshaikh
7.1K مشاهدة · 15 hours ago
1:07:15
تعلم البرمجة شرح بايثون مقدمة كاملة في البرمجة من الصفر Programming Crash Course with Python
Codezilla
2.2M مشاهدة · 3 years ago