Entesar ElBanna

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

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

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

  • Days Won

    16

السُّمعة بالموقع

48 Excellent

8 متابعين

  1. أهلا بكِ، الإجابة السابقة مذكورة بطريقة الكود الزائف سودوكود (Pseudo code) فهي لا تتبع لأي لغة برمجة وإنما من الصياغة يُفهم منها خوارزميًا ما هي طريقة حل المشكلة. حقيقةً يصعب صياغة أي كود سواء فعلي أم مزيف باللغة العربية، إذا كنت ترغبين بمعرفة طريقة وسبب كتابة الشيفرة السابقة فالشرح كالتالي: استخدمنا 3 حلقات تكرار متداخلة بدءا بالشيئ الأعم ودخولًا للأمور الأخص فلزمنا في البداية التعامل بشكل مفصل مع كل تخصص فبدأنا العملية بحلقة التكرار الخارجية المعبرة عن التخصصات(X) وتتكرر نفس عدد التخصصات في كل مرة تتفصل بنفس الأليه بكل تخصص حتى تنتهي تخصصات الكلية. لكن لا يمكننا أن نتوصل إلى الطلبه بعد، فبداخل كل تخصص عدة أقسام...لذلك بداخل كل مرة من مرات تكرار حلقة التخصصات الخارجية لزمنا التعامل مع كل قسم من أقسام كل تخصص على حدة فأنشأنا حلقة تكرار وسطى المعبرة عن التخصصات (y) تتكرر بعدد الأقسام داخل كل تخصص. ليس بعد، أيضًا الأن لا يمكننا الوصول للطلبة، فالطالب يُنسب لشعبة في البداية وليس للقسم بشكل مباشر...لذلك أنشأنا حلقة التكرار الأخيرة الداخلية الخاصة بالشعب(z) تتكرر بعدد الشعب داخل قسم، الأن يمكننا الوصول لطلاب كل شعبة من خلال كل دورة في حلقة التكرار الداخلية الأخيرة...فمثلًا إن كان هناك شعبتين في القسم ستتكرر الحلقة مرتين لهذا القسم وناتج تنفيذ كل مرة هو إضافه عدد طلاب الشعبة للمتغير sum ، عند الإنتهاء من الشعبتين لهذا القسم يقوم البرنامج أوتوماتيكيا بالتحويل على القسم الأخر ويضيف مجموع طلاب شعب القسم الأخر بنفس الطريقة السابقة...وعند الإنتهاء من عدد الأقسام يقوم البرنامج أوتوماتيكيا بالتحويل على التخصص الأخر فيضيف مجموع طلاب شعب جميع أقسامة للمتغير sum حتى ينهي المرور على جميع التخصصات وبهذا يكون قد أنهى إيجاد عدد طلاب الكلية... إن كنتِ تقصدين طريقة أخرى معينة للشرح أو لا تزال الفكرة غير واضحة يمكنكي إخباري كل التوفيق...
  2. أهلًا بك، هل يمكنك إرفاق لقطة شاشة بالمشكلة التي تواجهك ستجد شرح لطريقة التثبيت أيضًا في هذا الرابط بالتوفيق...
  3. أهلًا بك، الإشارة % داخل علامات تنصيص print مع أحد الحروف d أو s أو غيرهم (specifiers)...ترمز لنوع المتغيرات التي ستُطبع... فمثلًا هنا %s تعني متغير نصي قادم. بينما الإشارة % خارج علامات التنصيص فهي كفاصل يُهيِئ جملة الطباعة لاستقبال أسماء المتغيرات المعنية بالترتيب. يوجد عدة أساليب للطباعة في لغة python وقد يبدو أن استخدام إشارة + للدمج داخل print هو أسهل هذة الطرق.. لكن،فعليًا يفضل استخدام (specifiers) لعدة أسباب: (هذا لا يعني تجنب استخدام + لدمج النصوص بعمليات الطباعة) بناء جملة سلسلة التنسيق تعكس أكثر سهولةً وقابليةً للقراءة، حيث أن استخدام specifiers يفصل النمط عن البيانات. أيضًا، في مثال Python هذا، يقوم %s تلقائيًا بإجبار أي أنواع بيانات غير str أن تكون من نوع str؛ بينما خاصية الدمج هي غير متاحة إلا لأنواع البيانات النصية ولا يمكنك دمج نوع بيانات str مع نوع بيانات int. البيانات النصية Python str غير قابلة للتغيير ، لذلك يجب نسخ السلسلة اليمنى واليسرى في السلسلة الجديدة لكل زوج من السلاسل، أي إذا أردت دمج أربعة سلاسل طولها 10 باستخدام إشارة +... فسيتم نسخ (10 + 10) + ((10 + 10) +10) + (((10 + 10) +10) +10) = 90 حرفًا ، بدلاً من 40 حرفًا متوقع وتزداد الأمور سوءًا مع زيادة عدد وحجم السلسلة. تعمل Java على تحسين هذه الحالة في بعض الأحيان عن طريق تحويل سلسلة التسلسل لاستخدام StringBuilder ، لكن Python لا تفعل ذلك التحسين. لذلك نقوم باستخدام specifiers %s لنأخذ القيم الأصلية ونتفادى عملية النسخ المتتابع اللإرادية التي تحدث عند إستخدام إشارة +. أسهل في التعديل في حالات جمل الطباعة الطويلة...مثلًا إذا قمت بتغيير أسماء متغيرات برنامجك فعند تعديل جملة الطباعة سيسهل عليك التوجه مباشرة لجانب أسماء المتغيرات خلف إشارة % خارج علامات التنصيص... فتكون المتغيرات في مكان واحد حول بعضها... متوقع أن تبحث بوقت أطول عن المتغيرات الممزوجة في السلسلة النصية بإشارات + لتقوم بتعديلها. للمزيد يمكنك القراءة حول ()join وحول ()formate وأيضًا حول الدالة ()print من خلال موسوعة حسوب بالتوفيق...
  4. أهلًا بك، فعليًاهي ظاهرة! لكن، لاحظ اتجاه السهم...
  5. أهلا بكِ، أفضل طريقة لدراسة جانب البرمجة كائنية التوجه لأي لغة كانت...هو التمثيل بأرض الواقع عن كائنات (objects) تقوم بوظائف ولها خصائص تصفها...ثم إنشاء تحاور وترابط (assosiations) بين هذه الكائنات واستخدامهم ليؤدوا وظيفة ما...مثلًا لدينا "الأكواب" عبارة عن كائنات، وتلك الأكواب لها خاصيات معيّنة مثل المادة المصنوعة منها (زجاج، أو بلاستيك، أو معدن) والسعة القصوى لها، كما يمكن إجراء عمليات عليها مثل ملء كوب. لكن عمومًا تنطوي كل تلك الأنواع تحت لواء "الأكواب" تستخدم لنفس الوظيفة وإن اختلفت خاصياتها. يمكنك مشاهدة أمثلة عملية مشروحة بطريقة مبسطة لمادة ++oop c من خلال قناة بغداد الجديدة ويمكنك متابعة شرح كتاب مفصل ل oop مع أمثلة بلغة ++c بالتوفيق...
  6. اهلا بك فعليا لا يوجد جواب بعينه ..ذلك يرجع للسوق الذي ستعمل فيه فبصراحة ليس هناك شيء اسمه افضل لغات...أفضل لغة لتطوير الويب تختلف من شخص لآخر. و إلا ما رأيت العدد الكبير من لغات البرمجة. هناك تفضيلات بناء على هدف التطبيق وطبيعة استهوائك لها...، --الأفضل من حيث الشعبية وتوفر المراجع: PHP --الأفضل من حيث الأداء: Python (على سبيل المثال- قد لا يكون ذلك صحيحاً) --الأفضل من حيث قابلية التعديل والصيانة: Java... وهلم جرا. هذا من حيث خصائص اللغات (العرض)، الآن ما هي حاجتك بالضبط (الطلب)؟ --إن كنت مهتماً بمدى توفر المراجع فعليك بـ PHP. --إن كنت مهتماً بسرعة أداء اللغة، فعليك بـ Python (بحسب افتراضاتنا). --إن كنت مهتماً بالصيانة والتعديل بصورة دائمة فعليك بـ Java. --إن كنت مهتم بانشاء تطبيق ويب يفتح على الموبايل واللابتوب معا فيمكن انشاء تطبيق أندرويد باستخدام تقنيات الويب بالإضافة إلى javascript والتي تقوم باعطاء الديناميكية في التطبيق، اغلب ما سبق كان بالنسبة لتطبيقات الويب ويمكنك مشاهدة هذا الفيديو الذي يتحدث عن لغات برمجه تطبيقات الاندرويد https://www.youtube.com/watch?v=RRx4xvenc8A&feature=share بالتوفيق
  7. أهلًا بك، يمكنك فعل ذلك من خلال البرنامج التالي <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <button onclick="myFunction()">Try it</button> <script type="text/javascript"> function myFunction(){ var num1, num2, sum, numbers=[]; numbers.push(parseInt(window.prompt("Enter number"))); while (confirm("do you want to enter more??")) { numbers.push(parseInt(window.prompt("Enter number"))); } sum = numbers.reduce(function(a,b){return a+b;}); alert(sum * ((2*1.0)/(3*1.0))); } </script> </body> </html> بالتوفيق...
  8. أهلا بك، يمكنك فعل ذلك من خلال البرنامج البسيط التالي using System; public class Program { public static void Main() { Console.WriteLine("Type the UK: "); int UK = int.Parse(Console.ReadLine()); Console.WriteLine("Enter 1 to change the UK into France_size or Enter 2 to change the UK into Italy_size "); int choise = int.Parse(Console.ReadLine()); int result=0; if(choise!=1 && choise!=2) Console.WriteLine("you allow to choose between 1 and 2 only!!"); if(choise==1) result=UK+26; if(choise==2) result=UK+30; Console.WriteLine(result); } } بالتوفيق..
  9. أهلًا بكِ، لم أجد أي مشكلة في الكود لديكِ... ربما لم تقومي بحفظ أخر تغييرات أو نسيتي عمل compile قبل run للملف first cs121.cpp !!! الفكرة أنكِ تحاولين إنشاء nested structure بلغة c++ وتريدين الوصول لخاصية (اليوم) من خلال date) struct) المعرف منه birthdate كخاصية داخل person) struct) قد جربت الكود الخاص بكي وأعطاني النتيجة المرغوبة...لاحظي الصورة المرفقة...إن بقي عندك إشكال بعد التأكد من حفظ الملف أو كان لديكي خطأ غير واضح من صورتك لم أنتبه له فيمكنكي تحميل الملف المرفق فتلاحظي الصياغة السليمة لنفس الكود المطلوب (مع اختلاف أسماء المتغيرات) ها هو الملف... first cs121.cpp بالتوفيق...
  10. أهلًا بكِ، يمكنكي الإطلاع على دورات أكاديمية حسوب من هذا الرابط https://academy.hsoub.com/store/c1-دورات-تعليمية/ في حال قمتي بشراء أحد الدورات ستُرسل لكِ التفاصيل بالمساقات للبدئ عبر البريد الالكتروني وإن كان لديك حساب مسجل في أكاديمية حسوب فستضاف هذه الدورة لحسابك...إن لم يكن لديكي حساب مسبقًا فبمجرد شرائك لأحد الدورات سينشَأ لكِ حساب جديد.
  11. أهلًا بكِ، في البداية يمكنكي وضع ترقيم طبيعي وسيظهر 1 على الصفحة الأولى...حددي ترقيم 2 في الصفحة الثانيه بنقرتين...هذا سينقلك مباشرة لأمر (ارتباط بالسابق) من نافذة تصميم...قومي باختيار ذلك الأمر ثم عودي لقائمة إدراج>>رقم الصفحة>>تنسيق أرقام الصفحات... وفي خانه (بدئ الترقيم ب) أدخلى الرقم 1 ... هكذا سيظهر ترقيم الصفحة الثانية 1 والثالثة 2 والرابعة 3 وووو ... كما تريدين ولكن تبقى الصفحة الأولى أيضا بترقيم 1 مثل الثانية فيمكنك إزارة الترقيم 1 ببساطة الأن من الصفحة الأولى بعد تحديدة والضغط على زر delete من لوحة المفاتيح.. لفهم أوسع للفكرة عمليًا يمكنك متابعة الفيديو في هذا الرابط.. بالتوفيق..
  12. أهلا بكِ، يمكنك القيام بذلك بشكل خاص أي أن تجري أنتي العمليات والخطوات البرمجية (التي تطبق على المتجر في الدورة) على موقع إسكان...لن يختلف الأمر كثيرا عليكي...مجرد بعض الأعمدة في قاعدة البيانات بأسماء خصائص مختلفة لكل قطعة سكنية وفي القالب تعرضي الشقق بدل المنتجات...عمليات موقع الإسكان ستكون قريبه بشكل عام من العمليات المشروحة في موقع التجارة الإلكترونية. كل التوفيق...
  13. أهلًا بك @عابر سبيل2 يمكنك فعل ذلك بعدة طرق وعدة لغات..قد اخترت javascript ليسهل عليك تضمين الكود ببعض سطور داخل وسم <script> في نفس صفحة html ...بالنسبة لاختيار جواب واحد فهذا يتم تلقائيًا بدون برمجة مجرد تحديد الخاصية name مماثل لجميع خيارات السؤال <html> <head> <title>أختبار </title> </head> <body> <div> <h2>السؤال الأول</h2> <input type="radio" value="15" name="first" id="d1" /> <input type="radio" value="55" name="first" id="d2" /> <input type="radio" value="10" name="first" id="d3" /> </div> <div> <h2>السؤال الثاني</h2> <input type="radio" name="second" value="44" id="d4" /> <input type="radio" name="second" value="88" id="d5" /> <input type="radio" name="second" value="55" id="d6" /> </div> <button onclick="myFunction()">أحسب النتائج</button> <script> function myFunction(){ var firstResult=parseInt(document.querySelector('input[name="first"]:checked').value); var secondResult=parseInt(document.querySelector('input[name="second"]:checked').value); var totalResult=firstResult+secondResult; alert(totalResult); return totalResult; } </script> يمكنك التعرف ولو بشكل سطحي على فكرة كود جافاسكريبت السابق وفائدة التوابع التي استخدمتها بالتحديد... من خلال موسوعة حسوب في هذه الروابط https://wiki.hsoub.com/JavaScript/Functions https://wiki.hsoub.com/JavaScript/var https://wiki.hsoub.com/JavaScript/parseInt https://wiki.hsoub.com/JavaScript/Document/querySelector https://wiki.hsoub.com/HTML/input/radio
  14. أهلا خلود، تفكير جميل أن تقومي بتعلم لغة جافاسكريبت لانها لغةٌ تسمح لكي بتنفيذ أشياء متقدمة على صفحات الوِب، فصفحات الوِب الحديثة أكثر من مجرد موقع يُظهر لك معلومات ثابتة تتصفحها، فهي - مثلًا - تعرض تحديثات المحتوى المباشرة، أو تعرض الخرائط التفاعلية، أو الرسومات المتحركة ثنائية أو ثلاثية الأبعاد، أو تمرّر ملفات الفيديو المصورة، وما إلى ذلك. تمثّل جافاسكريبت الطبقة الثالثة من طبقات تقنيات الوِب القياسية. الطبقتان الأوليان هما HTML وCSS لذلك اأنصحك بالتعرف عليهم اولا ولو بشكل بسيط جدًا لمده بعض ساعات...أنصحك أيضًا بتطبيق كل شيئ جديد تتعلميه في هذه اللغة. تعلم جافاسكريبت سيكون سهل عليكي فهي لغة سلسة وإن كنتي تفضلين المحتوى العربي فسيفيدك توثيق جافاسكربت في موسوعة حسوب وأيضا دروس الاكاديمية. كل التوفيق...
  15. أهلًا بك، يمكن فعل ذلك بعدة طرق أبسطها أن تعطي أمر javascript في نفس السطر لوسم <img> باستخدام الخاصيتين onmouseover و onmouseout وبعد ضبط رابط صورتك الصحيح فينتج كالتالي <a href="#" id="name"> <img title="Hello" src="/ico/view.png" onmouseover="this.src='/ico/view.hover.png'" onmouseout="this.src='/ico/view.png'" /> </a> إذا كنت تريد تغيير شكل أيقونه بوتستراب فيمكن فعل ذلك بخاصية css وهي hover كالتالي <!DOCTYPE html> <html> <head> <link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN" crossorigin="anonymous"> </head> <body> <div class="container"> <a href="#" class="lock"> <i class="fa fa-unlock"></i> <i class="fa fa-lock"></i> </a> </div> <style> .lock:hover .fa-unlock, .lock .fa-lock { display: none; } .lock:hover .fa-lock { display: inline; } </style> </body> </html> بالتوفيق..