![]() |
|
احتاج طريقة للطرح او الجمع في المصفوفات - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : احتاج طريقة للطرح او الجمع في المصفوفات (/showthread.php?tid=18868) |
احتاج طريقة للطرح او الجمع في المصفوفات - abudawoodd - 19-01-17 السلام عليكم كما ترون الصورة الأولى طرح مع الاستلاف والثانية جمع مع الحمل اريد تطبيق هذا مع المصفوفات الاستلاف من القيمة التالية عند الطرح أو الحمل عند الجمع فهل يوجد دالة تقوم بذلك؟ ان كان الجواب لا فما هي افضل طريقة لوضع الكود لهذه الغاية ولكم فائق الشكر والتقدير RE: احتاج طريقة للطرح او الجمع في المصفوفات - ahmed.nabil - 19-01-17 abudawoodd انت عاوز تتعمل في sql server ولا معادلة في البرنامج وخلاص RE: احتاج طريقة للطرح او الجمع في المصفوفات - abudawoodd - 19-01-17 (19-01-17, 09:05 PM)ahmed.nabil كتب : abudawoodd انت عاوز تتعمل في sql server ولا معادلة في البرنامج وخلاص اخي العزيز اريد فقط المعادلة على المصفوقة ما هو افضل تصور برأيك للكود شكرا لك RE: احتاج طريقة للطرح او الجمع في المصفوفات - ahmed.nabil - 20-01-17 الطريقة الاولي هي انك تعملها في السيكوال سيرفر : هتفتح السكوال سيرفر وبعد كده تختار التابل الي انت بتشتغل عليها وتضغط علي الكولم الي العمليه هتم فيه بمجرد انك تضغط علي الكولم هيظهر تحت اختيارات هتدوس علي Computed Column Specification بعد كده هتيظهر تحتها Formula هتكتب فيها المعادله الي انت عاوز تعملها [Column1] + [Column 2] - [Colum3] الطريقة التانيه في البرنامج نفسو هتعمل Button جديد وتكتب فيه المعادله text1.Text = CInt(text2.Text) - CInt(text3.Text) text1 ده الي هيظهر فيه النتيجة ارجو اني اكون افدتك بحاجه ولو فيه حاجه وقفت معاك قولي الي انت عاوز تعملو بالظبط وانا اعملهالك جاهزة RE: احتاج طريقة للطرح او الجمع في المصفوفات - abudawoodd - 20-01-17 عزيزي احمد نبيل اشكر محاولتك مساعدتي لكن انا لم اقصد هذا انا اقصد في المصفوفات لنقل انها مصفوفين كل واحدة بطول 10 خانات حجم كل خانة 1 بايت كالتالي: المصفوفة الأولى: 240-099-022-232-099-250-077-044-034-253 المصفوفة الثانية : 245-129-202-121-199-020-057-024-134-153 الان اريد ان اجمع المصفوفتين . من المعروف والبديهي ان القيمة القصوى للبايت هي 255 لكن عند جمع الخانة الاولى من المصفوفة الاولى 240 مع الخانة الاولى من المصفوفة الثانية 245 النتيجة 485 البايت لا يحتمل هذه القيمة لذا اريد تخزين قيمة 229 ثم نقل الزيادة الى الخانة التالية 1 والتي تمثل 256 يعني الحمل كذلك عند الطرح 240 لا يمكن ان تطرح منها 245 لان البايت ليس فيه قيم سالبة لذلك استلاف واحد من الخانة التالية وهي 99 لتصبح 98 اما الواحد يمثل 256 يجمع الى 240 ليكون الناتج 496 ثم نطرح ل245 فيكون الناتج 251 ويرجى الانتباه ان القيمة التالية ربما تكون صفراً فنجعلها تستلف واحد من القيمة الثالثة لتصبح 256 ثم يتم الاستلاف منها لتصبح 255 هذا هو طلبي أخي العزيز فهل هناك دالة تقوم بهذا وان كان لا فما هي الطريقة الامثل باستخدام الكود RE: احتاج طريقة للطرح او الجمع في المصفوفات - ahmed.nabil - 21-01-17 طيب ممكن اعرف ايه البرنامج الي انت عاوز تعملو يمكن اقدر اساعدك فيه حاجه تعملك الي انت عاوزو بطريقة تانية RE: احتاج طريقة للطرح او الجمع في المصفوفات - noway - 21-01-17 [attachment=12901] [attachment=12900] RE: احتاج طريقة للطرح او الجمع في المصفوفات - abudawoodd - 21-01-17 أصدقائي اشكركم جميعا وجزاكم الله كل خير على محاولة المساعدة لكن ليس هذا ما اريد صديقي العزيز noway طريقتك تشبه ما اريد لكن ليست ما اريد ربما انا السبب لم استطع ايصال الفكرة سأحاول شرح مطلبي مرة أخرى اصدقائي لو عرفنا متغيرين من نوع بايت ووضعنا في الاول القيمة 255 والثاني يبقى 0 ما الذي سيحدث لو زدت واحد على القيمة القيمة الاولى اكيد كلكم تعرفون ان البايت لا يقبل اي قيمة اكبر من 255 لذا سيتوقف البرنامج معلناً الطفحان اي قيمة اكبر من المتوقع للمتغير لكن ان يصبح المتغير الثاني 1 ثم يكون المتغير الاول 0 سيحل الموضوع أخي العزيز بمعى اخر انا لا اجمع او اطرح بشكل عشري انما اقوم بجمع وطرح بايتات يعني السداسي عشري ولكم فائق احترامي وتقديري RE: احتاج طريقة للطرح او الجمع في المصفوفات - noway - 21-01-17 (21-01-17, 02:28 PM)abudawoodd كتب : أصدقائي اشكركم جميعا وجزاكم الله كل خير على محاولة المساعدة لكن ليس هذا ما اريدانت بدخل بيانات بالصورة العشرية و لا بدخلها بنظام Hex يعنى (255) و لا (FF) RE: احتاج طريقة للطرح او الجمع في المصفوفات - abudawoodd - 21-01-17 اخي العزيز المهم هو جمع بايت مع بايت فكيفما ادخلت البيانات ستكون النتيجة واحدة عشري او سداسي عشري او حتى بيانري وثماني لن يفرق هنا فكلها تؤدي في النهاية الى البايت ومضاعفاته انا عندي تصور كامل للحل ووضع الكود لكن ما افكر به توقف أمام نقطة جعلته ضعيفا ما افكر فيه هو كالتالي هذه مصفوفة 0 55 56 124 254 0 0 1 99 88 234 0 0 22 2 55 اريد ان اطرح هذه منها 55 66 34 67 5 0 6 123 234 243 1 0 32 34 234 22 انظر لأكبر سلسة اصفار وهي هنا 2 فأقوم بقراءة كل ثلاثة بايتات كقيمة واحدة ثم اطرح منها البايت المطلوب ثم اعيد تقسيم القيمة الناتجة الى ثلاث بايتات واعيد كل بيات الى مكانه بعد الناتج ثم ازيح القراءة واحد بايت ثم اعيد قراءة ثلاث بايتات بعد الازاحة حتى نهاية المصفوفة هذه الفكرة تحل الموضوع لكن ماذا لو وجدت سلسة اصفار اكبر من اكبر متغير يعني لو وجدت مثلا 64 صفر متتالي او اكثر من ذلك فهنا يظهر ضعف فكرتي جزاكم الله كل خير على صنيعكم معي |