تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
احتاج طريقة للطرح او الجمع في المصفوفات
#1
السلام عليكم
 

 
كما ترون الصورة الأولى طرح مع الاستلاف    والثانية جمع مع الحمل
اريد تطبيق هذا مع المصفوفات  الاستلاف من القيمة التالية عند الطرح أو الحمل عند الجمع
فهل يوجد دالة تقوم بذلك؟ ان كان الجواب لا فما هي افضل طريقة لوضع الكود لهذه الغاية
ولكم فائق الشكر والتقدير
الرد
تم الشكر بواسطة:
#2
abudawoodd انت عاوز تتعمل في sql server ولا معادلة في البرنامج وخلاص
الرد
تم الشكر بواسطة:
#3
(19-01-17, 09:05 PM)ahmed.nabil كتب : abudawoodd انت عاوز تتعمل في sql server ولا معادلة في البرنامج وخلاص

اخي العزيز اريد فقط المعادلة على المصفوقة
ما هو افضل تصور برأيك للكود
شكرا لك
الرد
تم الشكر بواسطة:
#4
الطريقة الاولي هي انك تعملها في السيكوال سيرفر : 

هتفتح السكوال سيرفر وبعد كده تختار التابل الي انت بتشتغل عليها وتضغط علي الكولم الي العمليه هتم فيه 


بمجرد انك تضغط علي الكولم هيظهر تحت اختيارات هتدوس علي Computed Column Specification
بعد كده هتيظهر تحتها Formula هتكتب فيها المعادله الي انت عاوز تعملها 
[Column1] + [Column 2] - [Colum3] 

الطريقة التانيه في البرنامج نفسو 
هتعمل Button جديد وتكتب فيه المعادله 
text1.Text = CInt(text2.Text) - CInt(text3.Text)
text1 ده الي هيظهر فيه النتيجة 
ارجو اني اكون افدتك بحاجه ولو فيه حاجه وقفت معاك قولي الي انت عاوز تعملو بالظبط وانا  اعملهالك جاهزة
الرد
تم الشكر بواسطة:
#5
عزيزي احمد نبيل اشكر محاولتك مساعدتي 
لكن انا لم اقصد هذا انا اقصد في المصفوفات لنقل انها مصفوفين كل واحدة بطول 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 

هذا هو طلبي أخي العزيز
فهل هناك دالة تقوم بهذا وان كان لا فما هي الطريقة الامثل باستخدام الكود
الرد
تم الشكر بواسطة:
#6
طيب ممكن اعرف ايه البرنامج الي انت عاوز تعملو يمكن اقدر اساعدك فيه حاجه تعملك الي انت عاوزو بطريقة تانية
الرد
تم الشكر بواسطة:
#7

.rar   TEST.rar (الحجم : 80.06 ك ب / التحميلات : 29)
   
الرد
تم الشكر بواسطة: abulayth , Mohamed20
#8
أصدقائي اشكركم جميعا  وجزاكم الله كل خير على محاولة المساعدة لكن ليس هذا ما اريد
صديقي العزيز noway طريقتك تشبه ما اريد لكن ليست ما اريد 
ربما انا السبب لم استطع ايصال الفكرة سأحاول شرح مطلبي مرة أخرى
اصدقائي لو عرفنا متغيرين من نوع بايت ووضعنا في الاول القيمة 255 والثاني يبقى 0
ما الذي سيحدث لو زدت واحد على القيمة القيمة الاولى
اكيد كلكم تعرفون ان البايت لا يقبل اي قيمة اكبر من 255 لذا سيتوقف البرنامج معلناً الطفحان اي قيمة اكبر من المتوقع للمتغير
لكن ان يصبح المتغير الثاني 1 ثم يكون المتغير الاول 0  سيحل الموضوع 
أخي العزيز بمعى اخر انا لا اجمع او اطرح بشكل عشري انما  اقوم بجمع وطرح بايتات يعني السداسي عشري 
ولكم فائق احترامي وتقديري
الرد
تم الشكر بواسطة:
#9
(21-01-17, 02:28 PM)abudawoodd كتب : أصدقائي اشكركم جميعا  وجزاكم الله كل خير على محاولة المساعدة لكن ليس هذا ما اريد
صديقي العزيز noway طريقتك تشبه ما اريد لكن ليست ما اريد 
ربما انا السبب لم استطع ايصال الفكرة سأحاول شرح مطلبي مرة أخرى
اصدقائي لو عرفنا متغيرين من نوع بايت ووضعنا في الاول القيمة 255 والثاني يبقى 0
ما الذي سيحدث لو زدت واحد على القيمة القيمة الاولى
اكيد كلكم تعرفون ان البايت لا يقبل اي قيمة اكبر من 255 لذا سيتوقف البرنامج معلناً الطفحان اي قيمة اكبر من المتوقع للمتغير
لكن ان يصبح المتغير الثاني 1 ثم يكون المتغير الاول 0  سيحل الموضوع 
أخي العزيز بمعى اخر انا لا اجمع او اطرح بشكل عشري انما  اقوم بجمع وطرح بايتات يعني السداسي عشري 
ولكم فائق احترامي وتقديري
انت بدخل بيانات بالصورة العشرية و لا بدخلها بنظام Hex
يعنى (255) و لا (FF)
الرد
تم الشكر بواسطة:
#10
اخي العزيز المهم هو جمع بايت مع بايت فكيفما ادخلت البيانات ستكون النتيجة واحدة 
عشري او سداسي عشري او حتى بيانري وثماني لن يفرق هنا فكلها تؤدي في النهاية  الى البايت ومضاعفاته
انا عندي تصور كامل للحل ووضع الكود لكن ما افكر به توقف أمام نقطة جعلته ضعيفا 
ما افكر فيه هو كالتالي
هذه مصفوفة
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 صفر متتالي او اكثر من ذلك
فهنا يظهر ضعف فكرتي

جزاكم الله كل خير على صنيعكم معي
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] طريقة ارفاق ملفات الى قاعدة بيانات access aak505 5 1,540 منذ 1 ساعه مضت
آخر رد: حريف برمجة
Heart اريد طريقة اضافة رقم صفر قبل الرقم ahmadpal 6 129 12-11-18, 01:00 PM
آخر رد: elgokr
Heart احتاج كود بحث ahmadpal 2 73 08-11-18, 08:42 PM
آخر رد: ahmadpal
  [VB.NET] طريقة عرض قيمة المحدد من ComboBox فراس الغزي 6 131 03-11-18, 12:08 AM
آخر رد: فراس الغزي
  [سؤال] ماهي طريقة الاتصال بقاعدة بيانات sql على السيرفر 102030 1 93 28-10-18, 11:19 PM
آخر رد: عبد العزيز البسكري
  أنهيت العمل ! أحتاج الأن إلى طريقة لتثبيت برنامجي hichem1 14 487 26-10-18, 05:03 PM
آخر رد: alsouf
  ما هي أسهل طريقة لتحويل مشروع VB.net الي asp.net dametucorazon 3 193 26-10-18, 04:09 PM
آخر رد: dametucorazon
  [VB.NET] طريقة عرض السجلات بطريقة افقية larbihamri 22 657 25-10-18, 09:52 AM
آخر رد: mohamedgadain61
  استفسار عن طريقة نقل البيانات من Datagridview إلى الكريستال ريبورت جيولوجي مبتدئ 2 145 22-10-18, 12:15 AM
آخر رد: جيولوجي مبتدئ
  حول طريقة تسجيل الدخول التلقائي naderalkeng54 13 483 20-10-18, 01:15 PM
آخر رد: Mohamed Magdy

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم