-
المساهمات
6975 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
218
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Wael Aljamal
-
ماهي الدولة؟
- 5 اجابة
-
- 1
-
-
نحن نستعمل الدالة toString في نفس الصنف، أي نفس class لذلك لاداعِ لاستعمال الmethod مثل get set ولكن الأفضل استعمالها مثل: public String toString(){ //اذا كانت المروحة on if (getOn()) return "speed "+speed+"\n"+"color"+color+"\n"+"radius"+radius+"\n"; //اذا كانت المروحة not on else { return "color"+color+"\n"+"radius"+radius+"\n"; } } أي ماعلينا فعله هو استدعاء الدالة ()getOn في المكان الذي نريد فيه استدعاء المتغير، حيث بعد الاستدعاء سيتم تعويض قيمة المتغير on في هذا السطر لأن الدالة تعمل على return on أي سيتم فحص الشطر كما هو مطلوب يمكن كتابة : if ( on ) { .. } مباشرة، حيث أن private متاحة ضمن نفس الصنف، إنما لايمكن الوصول لها من الغرض Object مباشرة.
-
هذا بسبب تمرير الدليل 0 بشكل دائم، يمكن تمرير id مثلا حسب رقم القائمة function showDetails(id) ^^^^^ var sel = document.getElementsByClassName('sedra')[id]; ^^^^^^ حيث أن getElementsByClassName تعيد مصفوفة بجميع العناصر التي لها نفس الصنف، هنا عليك تحديد من هو المقصود وتمييزه بطريقة ما إن قمت بتطبيق onclick على عنصر ما يمكنك الوصول له عن طريق this : onclick="myFunction(this)" ثم يمكنك الوصول للعناصر الأب له أو أي منهم حيث يتم استقبال العنصر بأي اسم متغير مثلا: showDetails(element) { element ... }
- 6 اجابة
-
- 2
-
-
هلقمت بمراجعة صفحة fees الخاصة ببوابة الدفع؟ لأن سؤالك أيضا غير واضح. الرابط: payment-gateway-fees
- 5 اجابة
-
- 1
-
-
أي أنك تريد عمل deploy لمشروع next.js على استضافة firebase.. يمكن باء المشروع ليكون قابلاً للتصدير export حيث نضيف لجزء script في package.json : "scripts": { "dev": "next", "build": "next build", "start": "next start", "export": "next export" // هذا }, ثم ننفذ: npm run build && npm run export الآن ستكون الملفات قابلة للرفع على استضافة static hosting server مثل firebase hosting حيث سيتم وضع الملفات في المجلد out/ لتفاصيل أكثر من التوثيق الرسمي: nextjs / static-html-export للعمل إن كانت الملفات تتولد لديك بشكل ديناميكي لايمكن رفعها على استضافة ساكنة static
-
إن كان الموقع يعمل بصورة جيدة في بيئة التطوير في حاسوبك (مثلا يمكن عرض الموقع مثل الهاتف من خلال أدوات المطورين) انقر على F12 ثم حدد هذه، للتجريب
- 14 اجابة
-
- 1
-
-
يعتمد الأمر على بنية المنتج (العنصر الذي تضيفه للبطاقة) فإذا كان يحوي خاصية تدعى العدد quantity فعليك المرور على المصفوفة و البحث عن هذا العنصر و تعديل الخاصية فيه بزيادتها ب 1، وإن لم يكن موجود، تقوم بإضافته للمصفوفة case ADD_TO_FAVORITE: { let flag = false; this.itemsInCart.forEach(el => { if (el.itemId == itemDetails.objectId) { el.qty += 1; flag = true; return false; } }) if (!flag) { this.itemsInCart.push({ itemId: itemDetails.objectId, itemName: itemDetails.dishName, itemPrice: itemDetails.price, qty: 1 }); } return { ...state, myFavorite: [...state.myFavorite, action.payload], }; } يمكن تحقيق ذلك بأكثر من طريقة.. array.indexOf(newItem) === -1 && array.push(newItem); أو Array.prototype.pushUnique = function (item){ if(this.indexOf(item) == -1) { this.push(item); return true; } return false; } /////////////// var newItem = "NEW_ITEM_TO_ARRAY"; var array = ["OLD_ITEM_1", "OLD_ITEM_2"]; array.indexOf(newItem) === -1 ? array.push(newItem) : console.log("This item already exists"); console.log(array) ** إن كان العنصر موجود نزيد تكراره وإلا نضيفه، وبالحذف إن كان موجود نقلل تكراره وإن أصبح 0 نحذفه من المصفوفة
- 1 جواب
-
- 1
-
-
يمكننا توليد مصفوفة من مواقع العناصر المطلوبة ثم أخذ هذه المصفوفة ك indexes للمصفوفة الهدف: a[np.arange(len(a))!=3] array([0, 1, 2, 4, 5, 5, 6, 7, 8, 9]) المصفوفة الأصلية فيها الأعداد من 0 حتى 9 (تم تخطي 3) ويمكن استعمال concatenate : np.concatenate((x[:i],x[(i+1):])) array([0, 1, 2, 4, 5, 6, 7, 8, 9]) حيث i هي الدليل المستبعد أي 3. كما يمكن استعمال masked array لتحديد العناصر التي لانريدها a = np.ma.array(a, mask=False) # الافتراضي False a.mask[3] = True # المستبعد print(a) # [0 1 2 -- 4 5 5 6 7 8 9]
- 4 اجابة
-
- 1
-
-
هل قمت بالإبلاغ عن المشكلة ضمن صفحة المشروع أو التواصل مع الدعم الفني؟
-
متغيرين في الكلاس، أي لدينا صنف فيه خاصيتين نريد المقارنة بينهما؟ import java.util.Scanner; public class Questions { int x1, x2; public static void questions(String[] args) { Scanner sc =new Scanner(System.in); System.out.println("أدخل العدد الأول"); x1 = sc.nextint(); System.out.println("أدخل العدد الثاني"); x2 = sc.nextint(); if ( x1 > x2) { System.out.println(" العدد الأول هو أكبر "); } // .... باقي الشروط } } أرجو المحاولة بالأسئلة السهلة وكتابة شيفرتك الخاصة ثم نعمل معاً لتصحيح الأخطاء. وعليك توضيح الأسئلة بشكل أكبر، لن نجيب على أسئلة غير واضحة
-
يمكن التأكد أن الدليل المطلوب يتبع للخيارات المطلوبة: function showDetails() { var sel = document.getElementById('embroiderys-value'); var selIndex = sel.selectedIndex; if (selIndex == 0) { alert("أرجو تحديد خيار مناسب"); return; } var option = sel.options[selIndex].value; window.open("accessories/tatreez/tatreez-view.php?id="+option); } حيث قمنا بعمل شرط، إن كان العنصر المحدد هو 0 (تأكد من حمل المتغصير للقيمة null مثلا أو قيمة أخرى) نقوم بعمل alert ثم نضع عبارة retun لكي لا يتم استكمال الشيفرة في الدالة
- 2 اجابة
-
- 2
-
-
يمكن عمل الأمر على الخطوات التالية، تعريف مصفوفة تحوي روابط (مسارات الصور) var images = [ "https://www.img1...", "https://www.img2...", "https://www.img3...", ] ثم نأخذ مرجع للعنصر في الصفحة الذي نضع له الخلفية: var imageHead = document.getElementById("image-head"); ^^^^^^^^^^^^^ استخدم اسم المعرف Id للعنصر لديك (أو ضع له واحد مخصص) ثم شيفرة جافاسكربت: var i = 0; setInterval(function() { imageHead.style.backgroundImage = "url(" + images[i] + ")"; i = i + 1; if (i == images.length) { i = 0; } }, 1000); setInterval: هي دالة جافاسكربت، تأخذ function وتقوم باستدعائه كل مدة زمنية (الوسيط الثاني).. i هي متغير يحمل رقم الصورة، وعند كل تكرار (استدعاء كل 1 ثانية) سيتم جلب مسار الصورة المطلوبة (التالية) وإسنادها للخاصية bacjground img وهذا يعمل على تعديل الصورة، عند وصول i لآهر المصفوفة نعيدها ل 0 لأول صورة
- 5 اجابة
-
- 1
-
-
لماذا عليك تنفيذ هذه التعليمة؟ عملية التهجير قائمة على عدم العبث بالبيانات أثناء تغيير هيكلية الجداول، قم بإنشاء ملف تهجير جديد وأضف له الشيفرة المسؤولة عن إضافة الحقل الجديد ثم نفذ الأمر php artisan migrate فقط حيث أنه يقوم بتهجير الملفات التي لم تهجر.. أما الفكرة الأولى صحيحة، وهذا هو المطلوب، قم بتنفيذها. حاول تنفيذ أفكارك، والخطأ هو الجزء المفيد بعملية التعلم، اخسر البيانات اليوم أثناء التجريب وتعرف على سبب المشكلة لكي تتفاداها في المستقبل دوماً، افتح التوثيق واقرأ التعليمات: Laravel migration updating tables
- 12 اجابة
-
- 2
-
-
مرحبا هويدا، التعديل جداً بسيط، لماذا لديكِ مشكلة في ترتيب التعليمات البرمجية؟ فقط نقوم بتعريف عداد ثم نزيد قيمته في كل مرة يدخل المستخدم إجابة صحيحة ثم في آخر مرحلة نطبع عدد الإجابات الصحيحة import java.util.Scanner; public class Questions { public static void questions(String[] args) { Scanner in =new Scanner(System.in); String arr[ ][ ]={{"S","R"},{"M","T"},{"A","D"}}; int answer= 0; for (int i=0;i<arr.length;i++){ System.out.println("ماهي عاصمة ولاية"+arr[i][0]); String x=in.next(); if(x.equals(arr[i][1])){ answer += 1; System.out.println("اجابة صحيحة "); }else { System.out.println("اجابة خاطئة! "); System.out.println("الاجابة الصحيحه هي:"+arr[i][1]); } } System.out.println("عددالاجابات الصحيحه هو" + answer); } } تعريف متغير الإجابات الصحيحة ب 0 زيادة قيمته ب 1 عند إجابة صحيح بعد الحلقة نطبع عدد الإجابات الصحيحة
-
إن استخدام HTML - CSS لعمل رسوميات هو أمر خاص جداً وليس شائعاً، وللأسف لايوجد في دورات أكاديمية حسوب أي شروحات بما يخض هذا، بل تركز الدورات على تعليم عدة مستويات من هذه التقنيات، من شرح الأساسيات لاستخدام إطارت العمل وتخصيصها وتعليم SASS وهذه الأمور هي الأكثر أهمية في مجال العمل.. إن تعلمت الأساسيات جيداً ستصبح قادرا على تصميم مواقع انترنت بتصاميم مميزة، ومع الوقت ستتعلم تصميم رسوميات معقدة، مع العلم تحتاج إلمام جيد بالرياضيات والهندسة لتستطيع التعامل مع الأشكال الهندسية و الزوايا بمرونة.. وكما يقول الرسام بابلو بيكاسو : " اتقن القواعد كمحترف ، حتى تتمكن من كسرها كفنان" حيث أن عمل رسوميات هو جاني تصميمي إبداعي وليس برمجي، لا يمكن تعلم الفن والذوق، إنما هذه مهارات شخصية فقط تحتاج لأساسيات التقنية المستخدمة.
- 1 جواب
-
- 1
-
-
في هذه الجزء :: com.aboutyou.dart_packages.sign_in_with_apple.SignInWithAppleCallback ^^^^^^^^^ متغير حسب اسم المشروع لديك عدل اسم حزمة التطبيق ليتم إعادة التوجيه للبرنامج ثم للحزمة لتعالج الطلبية* إن لم تعمل، redirectUri خطأ، أنت تعيد البيانات لرابط غير مرتبط بمشروعك أو تطبيقك، حاول متابعة التوثيق في جزء: WebAuthenticationOptions.redirectUri intent://callback?${PARAMETERS FROM CALLBACK BODY}#Intent;package=YOUR.PACKAGE.IDENTIFIER;scheme=signinwithapple;end ******* في apple console حاول تحويل المشروع ل production ويجب تفعيل Sign with Apple لتعمل خارج نظام أبل بعمل تعديلات لكل من Identifier Service ID glitch web app
- 4 اجابة
-
- 1
-
-
يمكن استخدام numpy.insert ولكنه يعيد مصفوفة جديدة لأن المصفوفات في numpy لها طول ثابت.. >>> import numpy as np >>> a = np.asarray([1,2,3]) >>> np.insert(a, 3, 1) array([ 1, 2, 3, 1]) insert يأخذ وسيطين، دليل العنصر بالمكان الذي نريد حشره ثم قيمته.. إن كنت تريد استخدام concatenate فهي تتعامل مع المصفوفات، لذلك عليك تمرير أجزاء المصوففة الثابتة و بينها العناصر الجديدة في مصفوفة خاصة np.concatenate((arr, [ arr[0] ] )) ^^^ ^^^ لاحظ إحاطة العنصر المضاف بين أقواس مصفوفة الشكل العام لها .. np.concatenate((a[:index], [value], a[index:])) إن أردت حشر العنصر في آخر المصفوفة يمكن استخدام الدالة append: import numpy as np arr = np.array([1, 2, 3]) arr = np.append(arr,1) print(arr) # [1 2 3 1]
- 4 اجابة
-
- 1
-
-
يمكننا ضرب المصفوفة ب -1 ونرتبها تصاعدياً ثم نضرب الناتج مجدداً ب -1 لنحصل على الناتج الصحيح.. - np.sort( -a ) # مصفوفة معكوسة array([7, 7, 6, 4, 4, 4, 4, 2, 2, 2]) كما يمكن عكس اتجاه مصفوفة مرتبة مثلا باستخدام الدالة flip: np.flip(np.sort(a)) للعلم: temp[::-1].sort() # يرتب المصفوفة الأصلية في مكانها np.sort(temp)[::-1] # يقوم بإنشاء مصفوفة أخرى جديدة
- 4 اجابة
-
- 1
-
-
إن كانت جميع القيم في المصفوفة موجبة يمكن استخدام numpy.bincounts لحساب تكرار كل عدد ثم نطبق على ناتجه الدالة argmax: arr = np.array([1,2,3,1,2,1,1,1,3,2,2,1]) myCounter = np.bincount(arr) print(np.argmax(myCounter)) كما يمكن استخدام np.histogram : np.histogram([[1, 2, 1], [1, 0, 1]], bins=[0,1,2,3]) (array([1, 4, 1]), array([0, 1, 2, 3])) bins هي العتبات التي سيتم حساب التكرار عندها، و np.histogram تعيد مصفوفة تحوي تكرار كل قيمة موافقة للعتبات bins للعنصر المقابل لها كما يمكن استخدام collections.Counter من بايثون: from collections import Counter a = [1,2,3,1,2,1,1,1,3,2,2,1] b = Counter(a) print(b.most_common(1)) حيث b يحمل تعداد التكرارات، ثم نطبيق الدالة most_common للأكثر تكرارا ونمرر الترتيب الأول لأكثر عنصر
- 4 اجابة
-
- 1
-
-
هل clientId: 'com.example.iphon', هو نفسه رقم التطبيق الذي حجزته في أبل؟ لاحظ أنه مختلف عن اسم الحزمة: android:name="com.aboutyou.dart_packages.sign_in_with_apple.SignInWithAppleCallback"
- 4 اجابة
-
- 1
-
-
من فضلك، تواصل مع مركز الدعم في الإجابة السابقة، سيقدمون لك المساعدة المناسبة إن وُجدت. بالتوفيق
- 5 اجابة
-
- 1
-