تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[نقاش] بخصوص كود برنامج
#1
السلام عليكم

هذا السورس كود لبرنامج احتاجه في عمليات حسابية
علماً بان الادخال هوه عدد غير محدود من البتات مثل :

0101011101100011111001101001000

فيقوم بتجزئة البتات الى كروبات و كل كروب يحوي خمس بتات
مثل
         0 00100 01101 11110 10001 11101 01010
البرنامج يقوم بحساب عدد ال ( bit 1 ) في كل كروب و

مثلاً
01010
تحتوي 2 سوف يخزنها في X2

و

11101
تحتوي 4 سوف يخزنها في X4

المشكله لدي عند ادخال ارقام تظهر رساله تقول ( Index was outside the bounds of array )

و اتوقع هيه في جملة for
علماً ان الرسالة تختفي عند ادخال متتالية اطول او اقل من هذا العدد من البتات

كود :
int X0 = 0;
                       int X1 = 0;
                       int X2 = 0;
                       int X3 = 0;
                       int X4 = 0;
                       int X5 = 0;


                       f = n.Length / m ;

                       for (int i = 0; i < FinalBit.Length - 1 ; i = i + m)
                       {
                           R = 0;
                           for (j=0 ; j <= 4 ; j++)
                           {
                               if (FinalBit[ j + i] == 1)
                                   R++;
                           }
                           if (R == 0)
                               X0++;
                           else if (R == 1)
                               X1++;
                           else if (R == 2)
                               X2++;
                           else if (R == 3)
                               X3++;
                           else if (R == 4)
                               X4++;
                           else if (R == 5)
                               X5++;
                           
                       }
الرد
تم الشكر بواسطة:
#2
تم حيل المشكلة و الحمد لله


int R = 0;
int j=0;
int m = 5;
int f = 0;

int X0 = 0;
int X1 = 0;
int X2 = 0;
int X3 = 0;
int X4 = 0;
int X5 = 0;
int zz = 0;

f = n.Length / m ;

for (int i = 0; i < f; i++)
{
R = 0;
for (j = 0; j < m; j++)
{
if (FinalBit[j + zz] == 1)

R++;
}
if (R == 0)
X0++;
else if (R == 1)
X1++;
else if (R == 2)
X2++;
else if (R == 3)
X3++;
else if (R == 4)
X4++;
else if (R == 5)
X5++;

zz = zz + 5;
}





تحياتي للجميع
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] من يعرف برنامج تشفير قوي مدفوع عبد الله 5 113 07-10-18, 08:28 AM
آخر رد: elgokr
  [C#.NET] كيفية عمل مثل هذا التضليل لاكثر من سطر فى برنامج ايات abdalamask 23 344 07-10-18, 08:17 AM
آخر رد: elgokr
  مشكلة في برنامج مصنوع ب local database Moustafa1979 1 176 12-06-18, 12:53 AM
آخر رد: elgokr
  مساعدة في برنامج يقوم بالتشفير بالقطع الناقص بلغة c# السي شارب abdulaziz yslem 2 252 17-04-18, 05:57 PM
آخر رد: abdulaziz yslem
  [سؤال] كيف اعمل برنامج لانشاء جدول محاضرات Al_bukhyti 0 209 27-03-18, 12:42 PM
آخر رد: Al_bukhyti
  [سؤال] كيفية استدعاء برنامج خارج السي شارب من خلال واجهة السي شارب؟؟؟؟؟؟؟ husseinaltaee 1 246 19-03-18, 01:06 AM
آخر رد: khodor1985
  [سؤال] عمل برنامج بقاعدة بيانات x7rBI 2 254 11-02-18, 10:25 PM
آخر رد: x7rBI
  [C#.NET] ظهور ايرور في صيغة الفانكشن عند تنفيذ البحث في برنامج لمكتبة مدرسية Asmaa adel 1 163 31-01-18, 01:58 AM
آخر رد: karimx
  مساعدة في برنامج صغير DrSpy 0 155 25-01-18, 05:43 PM
آخر رد: DrSpy
  [سؤال] اريد كود لتبديل المستخدم في برنامج ادارة مبيعات amir.besamty 0 166 15-01-18, 01:42 AM
آخر رد: amir.besamty

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


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