اذهب إلى المحتوى

محمد عاطف17

الأعضاء
  • المساهمات

    4910
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    61

كل منشورات العضو محمد عاطف17

  1. في المثال الثاني هذه هي الطريقة الأفضل. حيث لاحظ في أننا نستخدم Do While وبعد Do While إذا كان الشرط True يتم تنفيذ حلقة التكرار إلى أن يصبح الشرط بعد Do While ب False . وهنا نحن نريد التكرار دائما إلى أن يدخل المستخدم رقم صحيح . ولهذا بدأنا البرنامج بان inputValid ب False أى أنه إلى الآن لم يتم إدخال الرقم . وبهذا فإن Do While Not inputValid هنا يتم أولا إحضار قيمة inputValid ويتم عكسها وبما أنها في بداية البرنامج ب False إذا Not False هي True وذلك يتم تنفيذ حلقة التكرار ويظل يتم تنفيذها . حتي يصل إلى هنا : هنا لاحظ أن المستخدم أدخل رقم صحيح بالفعل وبذلك نظهر رسالة أن الرقم الصحيح ونقوم بوضع قيمة inputValid تساوي True . وهكذا حينما نأتي إلى Do While Not inputValid ستكون حينها Not inputValid ب False وهكذا سنخرج من حلقة التكرار ولن يتم تنفيذها مرة أخرى.
  2. النفي في البرمجة كما هو في الحياة العادية . فمثلا لو أردت شراء شئ ما . وأردت وضع شرط لشراءه فمثلا لو كان هذا الشئ سعره مرتفع عن 1000 فلن تقوم بشراءه أما إذا كان سعره أقل من 1000 حينها ستقوم بشراءه . فهنا يمكننا تنفيذ هذا الجزء بكود ما بطريقتين . طريقة النفي Not : price = 1500 If Not price > 1000 Then lblMessage.Text = "قم بالشراء" End If فمثلا هنا إستخدمنا النفي وهو إذا لم يكن السعر أكبر من 1000 قم بشراءه الطريقة الأخرى بدون Not : price = 1500 If price < 1000 Then lblMessage.Text = "قم بالشراء" End If فمثلا هنا لم نستخدم النفي والشرط هو إذا كان السعر أقل من 1000 قم بشراءه. فهكذا في البرمجة يمكنك إستخدام النفي لشرط ما وتنفيذ أمر معين . أو يمكنك عدم إستخدام النفي ولكن عكس هذا الشرط . ففي المثال المرفق لديك هنا نحن نتحقق إذا لم يكن النص الذي تم إدخاله ليس رقما صحيحا نقوم بإظهار الخطأ وإذا لم ترد إستخدام النفي Not يمكنك عكس الشرط هكذا : Private Sub btnCheck_Click(sender As Object, e As EventArgs) Handles btnCheck.Click Dim userInput As Integer ' محاولة تحويل الإدخال النصي إلى رقم If Integer.TryParse(txtInput.Text, userInput) Then lblMessage.Text = "لقد أدخلت الرقم: " & userInput Exit Sub ' الخروج إذا لم يكن الإدخال رقمًا End If lblMessage.Text = "الرجاء إدخال رقم صحيح!" End Sub فلاحظ كيف قمنا بعكس الكود عندما لم نستخدم Not فقمنا بعكس طريقة عمل الكود حيث إذا تحقق الشرط نظهر رسالة أن الرقم الذي تم إدخاله صحيح . أما إذا لم يكن رقم الذي تم إدخاله لا يتحقق الشرط ويتم إظهار رسالة الخطأ. إذا Not هي تقوم بعكس قيمة الشرط فلو الشرط تحقق أي True فإن Not تقوم بعكسه إلى False . والعكس صحيح فلو كان الشرط هو False فإن Not تقوم بعكسه إلى True
  3. إذا كنت تقصد دورة الذكاء الإصطناعي فإنه يتم شرح طرق استخراج البيانات (Web scraping) و توجد مشاريع عملية على ذلك. ولكن إذا كنت تقصد ال Data mining فهذا ليس متاحا في الدورة. ويتم في الدورة شرح كيفية التعامل مع البيانات وتحليلها. ويمكنك قراءة ما ستقوم بتعلمه في الدورة من خلال الروابط التالية : https://academy.hsoub.com/learn/artificial-intelligence/ أما الفرق بين تنقيب البيانات و تحليل البيانات فإليك التالي : تنقيب البيانات (Data Mining): هو عملية اكتشاف الأنماط أو العلاقات المخفية بداخل مجموعة كبيرة من البيانات. والهدف الرئيسي هو استخراج المعلومات من تلك البيانات باستخدام تقنيات الخوارزميات والذكاء الاصطناعي. وعملية التنقيب تركز بشكل كبير على اكتشاف الأنماط التي لم يتم إكتشافها من قبل مما تساعد في التنبؤ بالمستقبل أو اكتشاف معلومات غير معروفة لنا. تحليل البيانات (Data Analysis): هو العملية التي يتم فيها فحص البيانات و تنظيفها مما يهدف إلى الوصول إلى الاستنتاجات واتخاذ القرارات بناء على البيانات التي لدينا مما يعطينا القدرة على الإجابة على الأسئلة بخصوص تلك البيانات و إتخاذ القرارات المناسبة.
  4. أعتقد أنك تقصد تفعيل الإكمال التلقائي (autocomplete) إذا كان كذلك يرجى وضع الكود التالي في خلية وتنفيذها: %config Completer.use_jedi = False حيث الكود السابق يعطل مكتبة Jedi الافتراضية في Jupyter والتي قد تسبب في بعض الأوقات عدم تفعيل الإكمال التلقائي بشكل صحيح. إذا لم تعمل أيضا يمكننا تثبيت مكتبات إضافية مثل jedi و IPython : pip install jedi ipython حيث من الممكن أن الإصدار الذي يوجد لديك لا يأتي مع jedi .
  5. وعليكم السلام ورحمة الله وبركاته. إن ال (Dynamic Programming) البرمجة الديناميكية هي تقنية في البرمجة وليست خوارزمية بنفهسا . ولكننا نستخدمها في الخوارزميات لحل المشاكل المعقدة عن طريق تقسيمها إلى مشاكل فرعية أبسط وحل كل مشكلة فرعية مرة واحدة وتخزين الحلول في جدول لتجنب الحسابات المتكررة.وبالتالي يمكن استخدامها لاحقا بدون الحاجة لإعادة حسابها. وهذا يؤدي إلى تقليل التعقيد الزمني بشكل كبير. وإليك المقال التالي من موسوعة حسوب لشرح وتقاصيل أكثر : https://wiki.hsoub.com/Algorithms/Dynamic_Programming
  6. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  7. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  8. نعم بمجرد شرائك للدورة يصبح لك وصول مدى الحياة لها . وأى تحديثات تأتي مع الدورة ستكون متاحة لك . لذلك إذا قمت بشراءها فستطيع الوصول إليها في أى وقت ولو بعد عدد من السنين. والدورة مقسمة إلى مسارات و كل مسار يوجد به العديد من الدروس وهي فيديوهات مسجلة مسبقا . وتوجد تمارين في نهاية كل درس و أيضا توجد مشاريع عمليه في نهاية كل مسار . ويوجد العديد من المدربين المتاحين في جميع الأوقات لمساعدة الطلاب فأى مشكلة تواجهك يمكنك إضافة سؤالك أسفل الدرس وستجد المدربين يقوم بتوضيح السؤال والإجابة عليك.
  9. إذا لم تكن لديك خلفية عن البرمجة مسبقا فالأمر سيكون صعب بالنسبة لك في بدء مشروع مكتمل مباشرة . وأيضا أنت تريد فصل المشروع إلى واجهة أمامية وواجهة خلفية. أما إذا كانت لديك خلفية مسبقة عن البرمجة فتوجد العديد من اللغات وأطر العمل . لذلك يرجى تحديد ما هي لغات البرمجة التي درستها . وهل تعاملت مع لغة جافاسكريبت في الواجهة الأمامية أو أى إطار عمل خاص بها سواء كان react أو vue أو angular ؟
  10. الأمر يعتمد على كثير من الأمور منها حجم وعدد الأسئلة التي يمكن للمستخدم إدخالها وأيضا مدي سرعة إستجابة الخادم لديك وإليك سلبيات وإيجابيات كل طريقة ويمكنك التفاضل بينهم. الحفظ تلقائي : إيجابيات: يجعل تجربة المستخدم أكثر سهولة حيث لن يحتاح المستخدم إلى الضغط على زر حفظ كل مرة. سيقوم بحفظ الأسئلة تلقائيا مما يقلل من فرصة فقدان البيانات إذا فقد المستخدم الإتصال بالإنترنت أوحدثت مشكلة لديه. سلبيات: من الممكن أن يساهم في إبطاء الخادم لديك عن طريق إرسال الطلبات كلما قام المستخدم بتعديل سؤال ما . قد يقوم المستخدم بالخطأ بتعديل سؤال مما يجعل السؤال يتم حفظه تلقائيا دون الحاجة للمستخدم بذلك مما يجعل من الممكن أن تضيع بيانات السؤال إذا لم ينتبه المستخدم. زر (حفظ) : إيجابيات: هنا المستخدم له تحكم أكبر حيث يمكنه تعديل أو إضافة كل سؤال بشكل منفصل . يتم تقليل الطلبات التي يتم إرسالها إلى الخادم ويتم فقط إرسال الطلب عند الحاجة إلى التعديل . سلبيات: قد يرى المستخدم أن الأمر ممل حيث سيتوجب عليه الضغط على حفظ كل مرة . فلو كان هناك العديد من الأسئلة سيشعر بالملل من كثرة الضغط على زر حفظ. زر واحد في نهاية الصفحة : إيجابيات: يمكن للمستخدم إضافة كل الأسئلة أو تعديلها كلها مرة واحدة مما يجعل الصفحة سريعة وإستجابة الخادم أسرع. يسهل تجربة المستخدم بحيث لا يحتاج إلى التفاعل المستمر مع الزر. سلبيات: إحتمالية فقدان البيانات كبيرة فلو حدث وتم إغلاق الصفحة بشكل غير متوقع أو نسي المستخدم الضغط على حفظ فإن كل التعديلات التي قام بها سيتم فقدانها. لهذا يمكنك قراءة مميزات وسلبيات كل طريقة وإختيار الطريقة الأنسب لمشروعك بناء على عدد وحجم الأسئلة.
  11. مرحبا عزيزي. إذا كنت تقصد دروة تطوير واجهات المستخدم و مشروع بناء موقع شخصي في المسار الأول . فلقد نظرت إلى الفيديوهات وفي أول فيديوا قام المدرب بإنشاء الملفات بالتفصيل وبناء الموقع من البداية وقد قام بتوضيح أهمية وإستخدام كل ملف . وفي ملف html قام ببناء كل عنصر وكل جزء بشكل منفصل وقام بتوضيح أهمية كل عنصر . لذلك أعتقد من الممكن انك قد قمت بالدخول على درس أخر أو ليس أول درس. بالنسبة لسرعة المدرب من الممكن أن تقوم بتغير سرعة إعدادات الفيديو وتقوم بجعله بطيئا قليلا إذا أردت. وإذا ما واجهت صعوبة أو جزء لم يتضح لك في الدرس يمكنك دائما السؤال أسفل الدرس وسيتم توضيح كل شئ لك.
  12. توجد عدة إستضافات توفر لك ذلك منها netlify و vercel و render ويمكنك قراءة الإجابة التالية لمزيد من التفاصيل : أما إذا أردت رفعها على github pages يجب عليك أولا تنفيذ أمر build ورفع مجلد build كما في المشروع لديك . ولمعرفة كيفية رفع المشروع على github pages يمكنك قراءة الإجابة التالية :
  13. وعليكم السلام ورحمة الله وبركاته. نستخدم getElementsByClassName عندما نريد التعامل مع مجموعة من العناصر حيث أن الدالة getElementsByClassName تقوم بالبحث عن جميع العناصر التي لها السمة التي نريد البحث عنها وتضمينها في قائمة واحدة معا. بينما الـ getElementById نستخدمها للتعامل مع عنصر واحد id معين حيث ال id هو معرف فريد أى لا يمكن أن يحتوي عنصرين في نفس الصفحة على نفس ال id لهذا يتم إرجاع عنصر واحد فقط . ويمكنك الإطلاع على الإجابة التالية لمزيد من التفاصيل :
  14. ستجدين أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  15. يمكنك قراءة التفاصيل التالية لمعرفة الشروط وكيفية حصولك على الشهادة : ولا تكفي فقط مشاهدة الفيديوهات يجب تطبيق ما تعملته وإتباع الأكواد التي يقوم بها المدرب حيث ستجد من ضمن الشروط أن يجب تسليم جميع الأكواد التي قمت بها في الدورة .
  16. توجد العديد من المكتبات التي يمكنك إستخدامها في بناء واجهات رسومية GUI في بايثون وإليك أشهر تلك المكتبات : Tkinter: إن هذه المكتبة تأتي مدمجة في بايثون بشكل افتراضي وهي المكتبة الأكثر شهرة وإستخدام في بناء تطبيقات سطح المكتب البسيطة. PyQt: مكتبة قوية ومشهورة مبنية على Qt و توفر لك أدوات واجهة مستخدم متقدمة وتدعم بناء تطبيقات معقدة. تدعم الكثير من المنصات مثل ويندوز و ماك و ولينكس. توفر إمكانيات تصميم أكثر ولكن معقدة بالنسبة إلى Tkinter. wxPython Kivy وإليك الدروس التالية لمزيد من التفاصيل حول المكتبات السابق ذكرها :
  17. وعليكم السلام ورحمة الله وبركاته. نعم إن نظام كالي لينكس يشبه نظام أوبنتو في كثير من الجوانب حيث أنهما يعتمدان على نفس الأساسيات ونفس نظام التشغيل وهو نظام تشغيل Debian و لكن اللإ ختلافات الكبيرة بينهما تكمن في كيفية تخصيص كل منهما والمميزات والأدوات التي يمتلكها. حيث أن كالي لينكس هو نظام مصمم مخوص لمهام الأمن السيبراني واختبار الاختراق و يأتي مع أدوات كثيرة مدمجة و التي تساعدك في إجراء اختبارات الاختراق إكتشاف الثغرات وفحص الشبكات والهكر الأخلاقي وغيرها. بينما أوبنتو هو نظام تشغيل عام . ولذلك يمكنك الإكمال مع كالي لينكس حيث معظم تعاملك في الدورة سيكون من خلال الطرفية وهي متاحة في النظامين. ولكن الأفضل هو تحميل وإستخدام أوبنتو مع المدرب حتي لا تتشتت ولا تحدث مشاكل لديك في إختلاف الشرح مع المدرب.
  18. وعليكم السلام ورحمة الله وبركاته. يجب الإنتباه أن الشهادة ليست بتلك الأهمية الكبيرة حيث المهم لك هو الخبرة العلمية والعملية لذلك يجب عليك التركيز أكثر على الدراسة وجعل أمر الشهادة يأتي بعد ذلك. أما بخصوص الحصول على الشهادة فيمكنك الإطلاع على الصفحة التالية الامتحان والحصول على الشهادة حيث يوجد بها كل شيء يتعلق بموضوع الشهادة و الإمتحان و الخطوات مقتبسة من الصفحة: خطوات الامتحان : 1. تواصل معنا أخبرنا برغبتك باجراء الامتحان مع تزويدنا بروابط مشاريعك التي طبقتها أثناء الدورة. يجب أن تكون قد طبقت المشاريع مع المدرب أثناء الدورة، ولا يمكن اجراء امتحان بمشاهدة المحتوى فقط. 2. محادثة صوتية سنحدد لك موعد لاجراء محادثة صوتية لمدة 30 دقيقة يطرح المدرب فيها أسئلة متعلقة بالدورة ويناقش معك ما نفذته خلالها. 3. مشروع التخرج سيحدد لك المدرب مشروعًا مرتبطًا بما تعلمته أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع الى أسبوعين. 4. مراجعة المشروع والتخرج سيراجع المدرب المشروع الذي أنجزته، وإن سارت جميع الخطوات السابقة بشكل صحيح، ستتخرج وتحصل على الشهادة أو يرشدك المدرّب لأماكن القصور ويطلب منك تداركها ثم التواصل معنا من جديد. الشروط التي يجب تحقيقها قبل التقدم للإمتحان: يمكنك التقدم إلى امتحان الدورة، من خلال التواصل مع مركز مساعدة أكاديمية حسوب، مع مراعاة الشروط التالية: إتمام أربعة مسارات تعليمية على الأقل التطبيق العملي مع المدرب، والاحتفاظ بالمشاريع العملية الناتجة لإرسالها للمراجعة رفع المشاريع على حسابك على GitHub أولًا بأول لمشاركتها معنا إذا يجب عليك قراءة الشروط السابقة جيدا . فإذا أتممت أربع مسارات بالفعل وقمت بالتطبيق مع المدرب ورفع الأكواد على موقع github يمكنك الآن محادثة الدعم وإخبارهم للتقدم للحصول على الشهادة.
  19. المشكلة الأساسية لديكي هنا عند إرسال الطلب التالي : ستجدين هنا أنه يتم إرساله صفحة ويب وليس بيانات ال subcategories . لذلك أعتقد أنه إما يتم إرسال الطلب إلى عنوان خاطئ او توجد مشكلة في الطلب ويحدث خطأ 500 . لذلك يجب فتح نافذة network في المتصفح والنظر إلى الطلب الذي يتم إرساله . يرجى الضغط عليه وإرسال صورة لما يتم إستقباله من هذا الطلب .
  20. لا مشكلة يمكنك ترك السؤال وإضافة السؤال مجددا أسفل الدرس . ويرجى إرفاق صورة لموجه الأوامر cmd لديك وأمر npm run dev يعمل لديك.
  21. يرجى تشغيل أمر npm run dev في موجه الأوامر cmd ليتم تحزيم ملفات css و js . حيث الخطأ يحدث بسبب عدم العثور على الملفات التي يتم تحزيمها بإستخدام الأداة vite . وإذا كان هذا السؤال خاص بإحدى دروس الدورات فستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  22. وعليكم السلام ورحمة الله وبركاته. يجب عليك تقسيم البيانات التي لديك إلى مجموعتين . حيث مجموعة للتدريب ومجموعة أخرى للإختبار . حيث يفضل إستخدام 80% من البيانات للإختبار و 20% للتدريب . أو 70% و 30% . ويمكنك تقيم النموذج بناء على بيانات التدريب والقيم التي أخرجها النموذج ومن خلالها ستطستطيع حساب نسبة الدقة للنموذج. وتوجد طريقة أخرى لتقسيم البيانات تسمى Cross-Validation حيث في هذه الطريقة يتم تقسيم البيانات إلى عدة أجزاء ويتم تدريب النموذج على جزء منها ويتم إختباره على الأجزاء الأخرى. وهذا يضمن لك عدم إختبار النموذج على بيانات قد تدرب عليها مسبقا.
  23. للأسف هذه هي الشروط التي وضعتها الأكاديمية للتقدم للإمتحان . يجب عليك على الأقل إكمال أربع مسارات بمشاريعها للتقدم للإمتحان. يمكنك مذاكرة مسار انظمه التشغيل مع ثلاث مسارات أخرى سريعا وحينها يمكنك التقدم للإمتحان . إذا كان لديك أستفسارات أخرى أو تريد مزيد من التفاصيل يرجى محادثة مركز مساعدة أكاديمية حسوب من خلال الرابط التالي : https://support.academy.hsoub.com/conversations
  24. يجب الإنتباه أن الشهادة ليست بتلك الأهمية الكبيرة حيث المهم لك هو الخبرة العلمية والعملية لذلك يجب عليك التركيز أكثر على الدراسة وجعل أمر الشهادة يأتي بعد ذلك. أما بخصوص الحصول على الشهادة فيمكنك الإطلاع على الصفحة التالية الامتحان والحصول على الشهادة بها كل شيء يتعلق بموضوع الشهادة و الإمتحان و الخطوات مقتبسة من الصفحة: خطوات الامتحان : 1. تواصل معنا أخبرنا برغبتك باجراء الامتحان مع تزويدنا بروابط مشاريعك التي طبقتها أثناء الدورة. يجب أن تكون قد طبقت المشاريع مع المدرب أثناء الدورة، ولا يمكن اجراء امتحان بمشاهدة المحتوى فقط. 2. محادثة صوتية سنحدد لك موعد لاجراء محادثة صوتية لمدة 30 دقيقة يطرح المدرب فيها أسئلة متعلقة بالدورة ويناقش معك ما نفذته خلالها. 3. مشروع التخرج سيحدد لك المدرب مشروعًا مرتبطًا بما تعلمته أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع الى أسبوعين. 4. مراجعة المشروع والتخرج سيراجع المدرب المشروع الذي أنجزته، وإن سارت جميع الخطوات السابقة بشكل صحيح، ستتخرج وتحصل على الشهادة أو يرشدك المدرّب لأماكن القصور ويطلب منك تداركها ثم التواصل معنا من جديد. الشروط التي يجب تحقيقها قبل التقدم للإمتحان: يمكنك التقدم إلى امتحان الدورة، من خلال التواصل مع مركز مساعدة أكاديمية حسوب، مع مراعاة الشروط التالية: إتمام أربعة مسارات تعليمية على الأقل التطبيق العملي مع المدرب، والاحتفاظ بالمشاريع العملية الناتجة لإرسالها للمراجعة رفع المشاريع على حسابك على GitHub أولًا بأول لمشاركتها معنا إذا يجب عليك قراءة الشروط السابقة جيدا . فإذا أتممت أربع مسارات بالفعل وقمت بالتطبيق مع المدرب ورفع الأكواد على موقع github يمكنك الآن محادثة الدعم وإخبارهم للتقدم للحصول على الشهادة.
  25. وعليكم السلام ورحمة الله وبركاته. من المصعب وإن لم يكن من المستحيل إنشاء محرك ألعاب خاص بك فهذا يحتاج إلى معرفة عميقة جدا بعدة علوم ومنها علوم الحاسوب والفيزياء ولن يستطيع شخص بمرفده إنشاء ذلك . وإذا إستطعت إنشاء محرك بنفسك فهذا يمكنك من إنشاء شركة خاصة بك وجعل الأشخاص يشتركون لديك. أما محركات الألعاب الجاهزة فهي توفر أدوات كثيرة تم تطويرها وتتميز بسهولة الاستخدام لتستطيع تطوير الألعاب وأيضا تتميز بالتطوير الدائم لتلك المميزات وتوفير الدعم لك وحل المشاكل في تلك الأدوات إذا وجدت . وأيضا لتتكامل مع الخصائص الجديدة لكروت الشاشة التي هي أيضا تتطور بسرعه رهيبة.
×
×
  • أضف...