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

كل الأنشطة

تحدث تلقائيًا

  1. الساعة الماضية
  2. Task Using c++language to write this cood A class Player is a class that holds the info of a football player including the following private member variables: 1- Name (string) 2- Year of Birth (int) 3- Height (int) 4- International Goals (int) 5- Nationality Add appropriate setters and getters for the class. The class NationalTeam is a class holding the players in a national football team of a certain country. The class has an array of Player objects [players] of size 18, holding all the players including substitutes (fixed size). The class has another array of Booleans [active] of size 18, where an element at index i in the active array is true if there’s a player in the players array at index i, and false otherwise. Both arrays are private members of the class. Other members of the class include country. The array of players is initially empty, and the active array’s elements are set to false. We can add to the array using the addPlayer(const Player&) member function, which will add the parameter player object in the first empty slot in the players array. The function will also update the active array to indicate that a player is added at that index. The function returns true if the player was added, false otherwise. We can also remove players using removePlayer(string) from the players array by giving the player’s name and the player will be removed (the player object will not actually be removed but, the active array will be updated to indicate this). Make sure that the name entered is not case sensitive. The function will return true if the player was found and removed, false otherwise. There other public member functions in the class including: - getNumOfPlayers // to return total number of players in the team - AvgHeight() // to return the average height of the team players - OldestPlayer() // to return the oldest player object - YoungestPlayer() // to return the youngest player object - AvgIntGoals() // to return the average number of international goals per player in the team - highestIntGoals() // to return the player with the highest number of international goals - operator<< // to output a team’s country and its players info. - writeStatistics(oftream&) // writes team statistics to a file including: o Team Country o Number of players o Average height of players o Name and age of oldest player o Name and age of youngest player o Average number of international goals of players o Name of the player with the highest international goals and the number of goals scored by this player. — For example: Country: # of Players: Avg. Height: Oldest Player: Age: Youngest Player: Age: Avg. Int. Goals: Player with highest goals: Gools: Create a global function readPlayersFromFile(ifstream&) which reads all players info from a file named “players.txt” into an array of player objects. Note that this file will have all of the players of all the teams that will be added later. The file will have the number of players in the file at the first line of the file. An example file is shown —For exampl : 100 Mohamed Salah 1992 173 48 Egyptian //////same for the rest of players until player 100///// Finally, create a main that will: 1- read players from players.txt into an array of player objects. 2- Ask the user to enter a number of national teams where the user will just enter their country names. 3- Next Display the players read from the file and the national teams entered by the user. 4- Now in a loop: Ask the user to add/remove players to teams as many times as they wish You can display players and teams numbered in step 3 such that the user can choose to add a player to a team by their displayed numbers. To remove a player the user has to enter their name to be removed. 5- After finishing step 4, show all of the national teams added by the user including the country and the players in this team using the operator<<. 6- Finally write the statistics of each of the teams to the file statistics.txt. All teams statistics should be in this single file. Writing Good Quality Code No program stays the same. It will need to change to fix bugs, add new features, etc. So, it is very important to write high quality readable code, so that you or other developers can be able to review and modify this code in the future. In this task, you will: 1. Add a comment/header at the beginning of your program saying who the author is, the purpose of the program, etc. 2. Add a comment/header for every function explaining what it does, what parameters it takes and what value it returns. 3. Add comments to any part that is difficult to understand.
  3. سؤال لكل شخص: عندي مشكلة بموقعي لا أعرف ما هي بالتحديد ولكنة بيختفي من على جوجل. موقعي هو حل سؤال ارجو المساعدة وشكرا
  4. اليوم
  5. شكراا جدا لحضرتك وعلي المعلومات الجميل ده انا يعني الحمد الله بستفد كثير اوي من حضرتكم جزاكم الله كل خير انا كانت عاوز استخدم المكتبه عشان اسرع واحسن ولكن تمام استخدم لغه ذاته نفسها
  6. هذا الخطأ شائع فى البرمجة وهو ما يسمى overflow اى ان الذاكرة لا تستطيع ان تحمل جميع البيانات فى المتغير . فمثلا المتغير من نوع int64 فى numby يستطيع ان يحمل ارقام من -9223372036854775808 الى 9223372036854775807 واى رقم يتجاوز هذه الارقام ستحدث مشكلة ال overflow اى فائض فان الذاكرة لا تعرف كيف تتعامل مع هذه البيانات الزائدة فتقوم بكتابة بيانات فوق البيانات الحالة فى المتغير مما يسبب ظهور ارقام سالبة او حتى رقم 0 . وهذه مشكلة متعلقة فى numby فهى لا تستطيع ان تتحمل بيانات كثيرة عكس python فانها مرنه حيث تقوم بتغير حجم الذاكرة حتى يتناسب مع المتغير . حيث لاحظ الفرق عند تنفيذ هذين السطرين. print(np.power(2,100)) #0 print((2**100)) #1267650600228229401496703205376 لاحظ فى السطر الاول فان numby تقوم باراجع 0 حيث حدثت مشكلة ال oveflow لان numby لم تستطع ان تتعامل مع العدد الذى اكبر من 9223372036854775807 . اما فى السطر الثانى فان بايثون مرنة حيث تستطيع تغير الذاكرة كما تريد لتتحمل اى قيمة للرقم . وكما اخبرتك من البداية ان المشكلة من الممكن ان تكمن فى numby ولم الحظ ان الرقم الذى يتم الاختبار عليه كبير . ولذلك يمكنك استخدام python بدون اى مكتبة مثل هكذا . def power_of_two(n): power_two = []; for i in range(1,n): power_two.append(2**i) return power_two print(power_of_two(10000)) ستجد ان بايثون لديها القدرة على تحمل اى رقم مهما كان .
  7. لاحظ الإعدادات يوجد حقل باسم index file، عليك به كتابة اسم الملف الرئيسي للمشروع لديك، وبشكل إفتراضي هو index.php يمكنك إنشاء ملف بذلك الاسم، أو تغيير الاسم في حقل index file إلى اسم الملف الرئيسي لديك.
  8. انك تحاول تشغيل السيرفر عند الضغط على run فى برنامج netbeans و هو يتطلب ان يكون هناك ملف الجذر الذى سيتم بدا السيرفر منه . وهو فى الحالة الافتراضية يكون ملف index.php وهو ليس موجود فى ملف المشروع لديك. لذلك الحل هو انشاء ملف index.php او كتابة الملف الذى تريد ان يكون هو ال root للسيرفر .
  9. في php لما اسوي رن ما يرضى يسوي وتطلع لي هذي النافذه
  10. ذلك مذكور في التعليق من البداية يبدوا أنك لم تنتبه إليه:
  11. حاول تغيير اسم ملف php.ini-development إلى php.ini والذي ستجده في المسار التالي: zeffa\.config\herd\bin\<version>\php.ini حيث أنّ zeffa هو مجلد المستخدم لديك في قرص الـ C في مجلد users. وقبل التعديل تأكد من إيقاف جميع الخدمات في herd كالتالي: ثم قم بإعادة التشغيل من منفذ الأوامر: herd restart أو من خلال الواجهة بالضغط على restart أو start all.
  12. تعتمد مكتبة NumPy على مصفوفات متجانسة لتخزين البيانات، مما يعني أن جميع العناصر في المصفوفة يجب أن تكون من نفس النوع، ونوع البيانات المُستخدم لتخزين قوى 2 هو العدد العشري ذو الدقة المزدوجة (float64). على الرغم من أن ذلك النوع من البيانات يمكنه تمثيل أرقام كبيرة، إلا أن له دقة محدودة، مع ازدياد قيمة n، تصبح قوى 2 كبيرة جدًا لدرجة تتجاوز دقة تمثيلها كأعداد عشرية ذوات دقة مزدوجة. وعندما تفقد الأرقام دقتها، يتم تقريبها إلى أقرب قيمة ممكنة ضمن نطاق التمثيل، ولديك يتم تقريب قوى 2 الكبيرة جدًا إلى الصفر. إذاً، عليك استخدام نوع بيانات العدد الصحيح ذي الدقة العالية (int64) لتخزين قوى 2 إذا كانت قيمتها ضمن نطاق تمثيله، لكن أيضًا الحل أحيانًا غير مناسب لجميع الحالات، خاصةً مع قيم n كبيرة جدًا. أنصحك بالإعتماد على مكتبة gmpy2 التي توفر دقة حسابية أعلى من مكتبة NumP وتسمح بحساب قوى 2 بدقة أكبر. أو استخدام بايثون فقط فاللغة قادرة على تنفيذ ما تريد.
  13. ازداد الإقبال على الألعاب ومجالات الترفيه ويزداد يومًا بعد الآخر، حتى باتت تُقام لها مسابقاتٌ بأموالٍ طائلة، وأصبحت صناعةً مرتفعة الأرباح، وهذا زاد من الطلب على مبرمجي الألعاب ورفع من فرصهم التوظيفية، فما هي برمجة الألعاب؟ وما أهم تقنياتها؟ وما مراحل برمجة لعبة إلكترونية؟ ما هي برمجة الألعاب؟ تشير برمجة الألعاب إلى عملية بناء لعبة من الصفر، بدءًا من تصميم الشخصيات وتحديد قواعد اللعبة، مرورًا بتطويرها وتحويلها من فكرة مجردة إلى لعبة رقمية، وصولًا إلى إصدارها للمستخدمين وتحديثها المستمر. ولا تقتصر أهمية برمجة الألعاب على الترفيه والتسلية، وإنما تتعدد فوائدها وتمتد إلى مجالاتٍ أخرى، مثل: تسهيل التعليم: دخلت الألعاب إلى عملية التعليم وزادت الألعاب التعليمية زيادةً ملحوظة في الآونة الأخيرة، فنجد لُعَبًا لتعليم البرمجة، مثل: سكراتش ومايكروسوفوت ميك كود، ويوجد ألعابٌ لتعليم اللغات المختلفة، وألعابٌ أخرى لتعليم مبادئ الرياضيات والفيزياء. تطوير القدرة على الإبداع وحل المشكلات: تحفز غالبية الألعاب الفرد على ابتكار طرق جديدة للتفوق على أقرانه في اللعبة، مما يزيد من قدراته الإبداعية والابتكارية، وكذلك أثناء ابتكار هذه الطرق تجابهه مشكلات عديدة يسعى لحلها، فتتطور عنده مهارة حل المشكلات. تنمية المهارات الناعمة: باتت كثيرٌ من الألعاب تعتمد على تشكيل الفرق واللعب ضمن مجموعات، ما يساعد على تنمية مهارات التعاون والتواصل والقيادة وغيرها. ما لغات برمجة الألعاب الإلكترونية؟ تكثر لغات برمجة الألعاب الإلكترونية، ويشتهر منها أربع لغات، وهم: سي بلس بلس⁦ C++ سي شارب #C⁦ جافا Java بايثون Python لنعرف مزيدًا من المعلومات عن كل لغة واستخدامها في برمجة الألعاب. سي بلس بلس ++C⁦ تعد سي بلس بلس إحدى أهم لغات البرمجة في مجال برمجة الألعاب، إذ لديها قدرة قوية على إدارة الذاكرة والعتاد بكفاءة، كما تتميز الألعاب المطورة باستخدام سي بلس بلس بالسرعة والأداء المرتفع، وكذلك تحظى لغة سي بلس بلس بدعم واسع من محركات الألعاب المختلفة، ما يجعلها لغة مميزة في برمجة الألعاب الثقيلة والمعقدة، ولا يعيب سي بلس بلس سوى صعوبة تعلمها وطول الوقت المتوقع للانتهاء من برمجة لعبة. سي شارب #C⁦⁦ تتشابه لغة البرمجة سي شارب في مميزاتها مع لغة سي بلس بلس، من سرعة إلى إدارة مميزة للعتاد ودعم واسع من مختلف محركات الألعاب، إلا أن سي شارب تعد أقل تعقيدًا وأسرع تعلمًا من سي بلس بلس، ما يجعلها خيارًا مناسبًا للمبتدئين في برمجة الألعاب، وكذلك تعد لغة سي شارب متعددة المنصات؛ أي يمكن باستخدامها برمجة ألعاب لأنظمة تشغيل الحواسيب وأنظمة تشغيل الهواتف سواءً. جافا Java تشتهر لغة جافا في برمجة ألعاب نظام تشغيل أندرويد، وتتميز الألعاب المبنية على لغة جافا بالقدرة الهائلة على التوسع وتحمل الزيادة المستمرة في أعداد المستخدمين دون حدوث أعطال في اللعبة، وكذلك توفر لغة جافا أدواتٍ مميزة للتعامل مع الرسوم Graphics والرسوم المتحركة Animations، ما يساعد المطور على برمجة ألعاب معقدة بصريًا بسهولة. بايثون Python لعل ما يميز بايثون في مجال برمجة الألعاب هو سهولتها، ولذلك تُستخدم لغة بايثون في برمجة الألعاب البسيطة الخالية من التعقيدات الرسومية، وكذلك تُستخدم بايثون للنمذجة الأولية للألعاب المعقدة قبل الشروع في تطويرها باستخدام لغة أخرى. ما أهم التقنيات المستخدمة في برمجة الألعاب؟ تعد التقنيات التي يستخدمها مبرمجو الألعاب عديدة، وأهمها: محركات الألعاب Game Engines برامج التصميم أو النمذجة ثلاثية الأبعادوالتحريك 3D Modeling and Animations برامج تصميم رسومات البكسل Pixel Art محركات الألعاب Game Engines تعد محركات الألعاب بيئات مجهزة لتطوير وتشغيل الألعاب، وتضم مجموعة من المحركات الأخرى، مثل: محرك الفيزياء الذي يساعد المبرمج على محاكاة الحركات الحقيقية في اللعبة، ومحرك الرسوم الذي يعالج الرسوم ثنائية الأبعاد وثلاثية الأبعاد في اللعبة، ومحرك الصوت المسؤول عن معالجة التأثيرات الصوتية في اللعبة، ومحرك الرسوم المتحركة، وغيرها من المحركات. لعل أبرز فوائد محركات اللعبة هي تسهيلها لعملية برمجة الألعاب وتوفيرها للكثير من الوقت على المبرمج، إذ كانت هذه العملية قبلًا شديدة التعقيد، ولكن بفضل محركات اللعبة صارت عملية سهلة وزادت إمكانيات الألعاب من رسوم وأداء وغيرها، ومن أشهر محركات الألعاب نذكر محرك Unity ومحرك Unreal Engine ومحرك جودو Godot. برامج التصميم أو النمذجة ثلاثية الأبعاد والتحريك 3D Modeling and Animations تشير النمذجة ثلاثية الأبعاد إلى عملية التمثيل المرئي للأبعاد الثلاثة وهم الطول والعرض والارتفاع لعنصرٍ في اللعبة باستخدام النقاط والخطوط والمضلعات، مثل: تمثيل إحدى شخصيات اللعبة مرئيًا على هيئة رسم ثلاثي الأبعاد، كما تتضمن نمذجة تحريكات العناصر، علي سبيل المثال نمذجة تحريك النباتات حول الشخصية أثناء سيرها، أو نمذجة سير الشخصية نفسها. تتضمن عملية النمذجة ثلاثية الأبعاد تحديد حجم الكائن أو العنصر وهيئته وتحديد طريقة حركته وتناغمه مع باقي عناصر اللعبة، ويعد التصميم ثلاثي الأبعاد مهمًا لزيادة واقعية اللعبة وتحسين رسومها وجاذبيتها، ومن أشهر البرمجيات المستخدمة في هذه العملية: برنامج Blender وAutodesk. برامج تصميم رسومات البكسل Pixel Art يعد فن البكسل فنًا رقميًا يهتم بتوليد رسوم بتفاصيل شديدة الدقة، إذ يعمل مصمم رسوم البكسل على تصميم الصورة أو الرسم على مستوى البكسل، وهو الوحدة الأصغر من مكونات الصورة، ولتبيين هذا المفهوم بدقة أكبر انظر الصورة التالية: ولعل أبرز لعبة مبنية على هذا النوع من الرسوم هي لعبة ماينكرافت الشهيرة، ومن أشهر برامج تصميم فن البكسل نذكر برنامج Aseprite وبرنامج PyxelEdit. ما مراحل برمجة لعبة فيديو؟ تتضمن عملية برمجة لعبة فيديو عديدًا من المراحل، منها: التخطيط: تبدأ عملية برمجة لعبة فيديو بالتخطيط لها، وتبدأ عملية التخطيط بابتداع فكرة ثم تطوير هذه الفكرة، كما تضم مرحلة التخطيط عملية تحديد نوع اللعبة؛ هل هي لعبة رعب أم حرب أم رياضة أو غيرها؟ وتضم أيضًا تحديد طراز اللعبة؛ ثنائية الألعاب كانت أو ثلاثية الأبعاد، وكذلك تتضمن تحديد محرك الألعاب ولغة البرمجة والتقنيات التي ستستخدمها لبرمجة اللعبة. ما قبل التطوير: تضم هذه المرحلة خطوات عديدة، فمنها مثلًا كتابة قصة اللعبة وخلق عالمها وشخصياتها وتحديد صفات كل شخصية، ومنها أيضًا النمذجة الأولية للعبة وإنشاء تصاميم أولية لأشكال الشخصيات، وكذلك تحديد أسلوب التصميم والألوان المستخدمة في اللعبة حسب القصة ونوع اللعبة. التطوير: تعد المرحلة الأهم والأطول في عملية برمجة لعبة فيديو، ويعمل خلالها المطور على كتابة شيفرات اللعبة وتحويل التصاميم الأولية إلى لعبة حقيقية، كما يعمل فنانو الصوت على تسجيل الحوارات بين الشخصيات، ويعمل المصممون على تصميم الرسوم المتحركة للعبة، ويعمل مصممو الصوت على إضافة التأثيرات الصوتية للعبة، ثم تُجمع هاته الإبداعات المختلفة معًا عبر محرك اللعبة لتكون اللعبة جاهزة للاختبار. الاختبار: يُختبر في هذه المرحلة جميع أجزاء اللعبة، بدءًا من الشيفرات لاستخراج الثغرات الأمنية وتنقيحها، مرورًا بالأداء لتحسينه وتحسين تجربة المستخدم الكلية، وصولًا إلى تناغم الأجزاء المختلفة من اللعبة عمومًا مع بعضها، وكذلك تُختبر مدى صعوبة اللعبة، وغيرها من الأجزاء المختلفة في اللعبة، ثم تُجمَع الأخطاء المكتشفة وتُنقَّح قبل إطلاق اللعبة. ما قبل الإطلاق: تتضمن هذه المرحلة التسويق للعبة وكتابة إعلانات تسويقية عنها، كما تتضمن إطلاق نسخة مبدئية للعبة لتجربتها والحصول على آراء أولية قبل الإطلاق الرسمي لها، ما يساعدك على تحسين اللعبة وإطلاقها في أفضل هيئة لها. الإطلاق: أصبحت اللعبة جاهزة وحان موعد الإطلاق؛ في هذه المرحلة تنشر اللعبة على المنصات المخطط لها، ولكن لم تنتهِ المراحل بعض فلا تزال اللعبة تحتاج تحديثاتٍ. التحديث: لا تنتهي هذه المرحلة أبدًا، إذ تستمر في إصدار التحديثات تحديثًا بعد الآخر لإضافة مميزات جديدة تزيد من متعتها وتُحسِّن من تجربة المستخدم، كما تسد الثغرات والمشكلات المكتشفة بعد إطلاق اللعبة. ما الفرق بين برمجة ألعاب الجوال وبرمجة ألعاب الحاسوب؟ تتعدد الفروق بين برمجة ألعاب الجوال وبرمجة ألعاب الحواسيب، ومن أهمها: الإمكانيات: يفوق عتاد الحواسيب عتاد الجوالات قوةً وقدراتٍ، ما يزيد من إمكانيات ألعاب الحواسيب، بدءًا من الرسوم فتكون رسوم ألعاب الحواسيب أكثر تعقيدًا، مرورًا بالأداء المرتفع لألعاب الحواسيب، وصولًا إلى توسعية اللعبة وحجم بياناتها وتعقيدها. محركات الألعاب: تكثر محركات ألعاب الحواسيب وتتفوق على محركات ألعاب الجوال في المواصفات والإمكانات، ومن أشهرها: محرك الألعاب Unreal Engine ومحرك CryEngine، بينما يعد Unity محرك الألعاب الأشهر في برمجة ألعاب الجوال. التكلفة: تعد تكلفة تطوير لعبةٍ للحاسوب أكثر من تكلفة تطوير لعبة للجوال، إذ تتضمن ألعاب الحاسوب تعقيداتٍ أكثر وتأخذ أوقاتًا أطول لبرمجتها من ألعاب الجوال. الخاتمة استكشفنا في مقال اليوم عالم برمجة الألعاب الإلكترونية وحظينا بنظرةٍ شاملةٍ عن ماهيتها وتعرفنا على مجموعة متنوعة من لغات البرمجة المستخدمة في تطوير الألعاب، مع تسليط الضوء على مميزات كل لغة وأهم تقنياتها ومحركاتها، ومراحل تطوير لعبة والفرق بين برمجة ألعاب الجوال وبرمجة ألعاب الحاسوب. وختامًا إذا كنت مهتمًا بمجال برمجة الألعاب ننصحك بأن تبدأ رحلتك في تطوير الألعاب بخطوة صحيحة من خلال تحديد متطلبات اللعبة التي تود صناعتها واختيار اللغة ومحرك الألعاب المناسب، والاستمتاع في تنفيذ أفكارك الإبداعية وتحويلها للعبة مميزة مليئة بالتحديات والإنجازات. اقرأ أيضًا ألعاب الفيديو: تطورها وأهميتها وخطوات برمجتها كيف تصبح مبرمج ألعاب فيديو ناجح تعرف على أهمية صناعة الألعاب الإلكترونية تعرف على أفضل برنامج تصميم الألعاب الإلكترونية أشهر أنواع الألعاب الإلكترونية
  14. هذا ليس المكان الخاص بال php.ini من فضلك قم بالذهاب للمسار التالى C:\Users\{user}\.config\herd\bin مع استبدال {user} باسم المستخدم لديك على الجهاز. ثم اذهب الى المجلد php على حسب الاصدار لديك . او فقط قم بتنفيذ هذا الامر وسيشير الى مكان ملف ال php.ini php --ini ثم قم بفتح php.ini وابحث عن variables_order وقم بتغيرها الى GPCS هكذا . variables_order = "GPCS" وذلك سيحل المشكلة ان شاء الله
  15. انها مشكلة بالمكتبة بعد القوة الكبيرة تحولها الى صفر يمكن استخدام طريقة اخرى لايجاد الحل
  16. تمام شكراا لحضرتك الا المشكله هي هي انا اكشفت المشكله وهي انا لو الرقم المتغير n كان كبير فا بيظهر ارقام سالب وكمان اضفر فا احل المشكله ده ازي ؟ الان المفروض ما يظهرش كده
  17. وعليكم السلام ورحمة الله وبركاته. نحن هنا لا نقوم بالاجابة على اسئلة الاختبارات ولكن يمكننى اعطائك نصائح لتستطيع حل المشكلة بنفسك. الكود الخاص بك لا يوجد به اى مشاكل وهو جيد جيدا . لذلك هل يمكنك ارسال رسالة الخطأ التى تظهر لك ؟ وايضا قم بكتابة الكود دون استخدام مكتبة numpy وحاول مرة اخرى وانظر هل يتم حل المشكلة ام لا . بالتوفيق لك
  18. الخطأ لديك فى العنصرين <div class="row text-header"> // سطر رقم 99 <div class="row cards"> // سطر رقم 102 لاحظ انك فى كلا العنصرين قد اضفت الخاصية position: absolute; وهذه الخاصية تقوم بحذف العنصر من ال flow اى انه لن يكون له اى تاثير على العناصر الاخرى من حيث الطول او العرض . لذلك سترى ان العنصر الاب <div class="container-fluid"> لا يمتلك اى طول . وانصحك بعدم استخدام position: absolute هنا حيث انك تستطيع تنفيذ نفس التصميم فقط باستخدام margin و padding و text-align: center; . ويمكنك استخدام الكود التالى . section#trending .text-header { /* position: absolute; top: 20%; right: 30%; */ text-align: center; margin-top: -50px; /* padding-bottom: 50px; */ } section#trending .cards { /* position: absolute; top: 50%; left: 1%; */ margin-left: 5px; width: 100%; } footer { margin-top: 50px; } ويمكنك استخدام اى قيمة كما تحب من حيث البعد عن العناصر margin او padding . وقد قمت بارفاق الملف لك بعد التعديل. style.css
  19. شكرااا لحضرتك جزاك الله كل خير
  20. الفرق الاساسي ان range ترجع كائن من نوع range لا يمكنك ان تقوم بعمليات المصفوفات العديدة هي مناسبة بشكل كبير لحلقات التكرار في الصور التالية تبين الفرق بين الاثنين حيث np.arange ترجع array تستطيع التعامل معها مع جميع العمليات التي تقبلها المصفوفة وفي الصور الثانية تبين عدم قدرة range على اجراء عميلة sum بينما np.arange كانت قادرة على ذلك
  21. السلام عليكم ده المسائل من موقع codewars Complete the function that takes a non-negative integer n as input, and returns a list of all the powers of 2 with the exponent ranging from 0 to n ( inclusive ). وده الكود بتاعي import numpy as np def power_of_two(n): if n >= 0: arenge = np.arange(0 , n+1) power_two = np.power(2 , arenge) return list(power_two) print(power_of_two(100)) ام بظغط علي TEST كل صح تمام هنا مفيش مشكله المشكله بقا ام بظغط علي ATTEMPT بيظهر مشكله انا مش فهم سببها اي مع ان انا شيف ان الكود كويس جدا هو ليه ام رقم n يكون كبير بيظهر في النتجيه البرنامج اصفر في اخر المضفوف
  22. شكراا لحضرتك انا فهمت ليه الناس بتحب مكتبه numpy وليه بتستخدم في كثير من المشاريع
  23. وعليكم السلام ورحمة الله وبركاته . ان دالة range هى دالة built-in function فى بايثون اما دالة arange فهى دالة خاصة بمكتبة numpy ولكن فى المجمل فان الدالتين متشابهتين فى الاستخدام و فى نفس كل شئ تقريبا . ولكن توجد بعض الفروق الجوهرية بينهما, ولكن اولا لنشرح ما وظيفتهما : دالة range تقوم بارجاع كائن من نوع مجال (range) يحتوي على أعداد صحيحة من نقطة البداية إلى نقطة النّهاية مع فصلها بمسافة عدديّة و تستقبل ثلاثة معاملات : start وهو النقطة التى نريد ان يبدا المجال منها. stop وهو النقطة التى نريد ان ينتهى المجال عندها . step وهو المسافة بين كل نقطة فى المجال وهو معامل اختيارى اذا لم يتم توفيره سيكون ب 1. مثال للدالة range list(range(3)) # من صفر إلى ثلاثة #[0, 1, 2] list(range(1, 5)) # من 1 إلى 5 #[1, 2, 3, 4] #list(range(1, 5, 2)) # من 1 إلى 5 مع اثنين كمسافة بين كلّ عنصر والآخر [1, 3] ويمكنك الذهاب لهذا الرابط لموسوعة حسوب لتفهم اكثر عمل الدالة. الان الدالة arange هى خاصة بمكتبة numpy وتقوم باعادة كائن من نوع مصفوفة (NumPy array) وهى تستقبل اربع معاملات اول ثلاق معاملات هم نفس الدالة range والمعامل الاخير هو نوع الكائن الذى تريد ان تقوم الدالة arange باعادته لك. الان ناتى للفروق الجوهرية : كما وضحت سابقا فان كل دالة تقوم بارجاع كائن مختلف عن الاخر فالدالة range تقوم بارجاع كائن مجال اما arange تقوم بارجاع كائن من نوع مصفوفة او كما تريد انت عن طريق تمرير المعامل الرابع كما تحب. ان دالة range لها قيد حيث لا يمكن ان تكون المسافة قيمة عشرية بل يجب ان تكون قيمة صحيحة عكس arange يمكن ان تمرر لها ما تريد import numpy as np print(np.arange(1,5,0.5)) print(list(range(1,5,0.5))) # هنا سوف يحدث مشكلة لان المسافة يجب ان تكون رقم صحيح السرعة هنا دالة arange أسرع من دالة range فى التنفيذ والعمليات التى تتم عليها . المساحة التى يتم استخدامها فى الذاكرة فى arange اقل من دالة range . ولكن يوجد بعض النصائح فاذا كنت تريد انشاء مجال يحوى على العديد من الارقام فان دالة range هى الافضل واذا اردت ان تقوم بالتكرار عليهم فقط فان الدالة range افضل كذلك من arrange . اما اذا كنت تريد تنفيذ عمليات عليهم فان numpy.arange تضمن لك السرعه فى ذلك الامر
  24. يتداخل اخر قسمين في بعضهم رغم انفصالهم عن بعضهم انفصال تام ولا علاقه ببعض web.zip
  25. كانت تواجهني نفس المشكلة ايضا ... واكن ولصت لحل وهو عن طريق خاصية object-fit بعد البحث وكانت هي الحل section#Home video { height: 100%; width: 100%; object-fit: cover; position: absolute; z-index: -1; } وحلت المشكلة
  1. عرض المزيد
×
×
  • أضف...