الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ادراج عنصر في ال array + الكود موجود بس مش عارف الغلط فين

بدأه A7meD SofT في 27 ديسمبر 2011 · 13 رد · 694 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ده الكود

int item,loc,i,j,k;
loc = -1;
int[] A = { 1, 2, 3, 4, 5, 6 };


Console.WriteLine("plz enter the item you want to insert");
item=Int32.Parse(Console.ReadLine());
for(i=0;i<A.Length;i++)
{
if (A>item)
{
loc=i;
break;
}
}
if (loc!=-1)
{
for(j=A.Length;j>loc;j--)
{
A[j]=A[j-1];
A[loc]=item;
}
for(k=0;k<A.Length;k++)
Console.WriteLine(A[k]);

يا ريت لو محتاج اي تعديل لانه مش شغال معايا خالص

وشكرا مقدما

#2

السلام عليكم ورحمه الله وبركاته

اخي اولا لا يمكن الادراج في مصفوفة ثابته وممتلئة بالعناصر لانه لايوجد مكان للادراج وثاني حاجه في كودك في قوس ناقص تبع الـ If الاخيره و في الدوران ماقبل الاخير لايمكن البدء من A.Length قم بتنقيص واحد منها

2

.:: Wish to become better and better ::.

#3

تمام شوف حضرتك كدة

int item,loc,i,j,k;
                loc = -1;


            int[] A = new int[1000];
            Console.WriteLine("Please enter size");
            int size = int.Parse(Console.ReadLine());

            for ( i = 0; i < size; i++)
            {
                A = int.Parse(Console.ReadLine());
            }

                Console.WriteLine("plz enter the item you want to insert");
                item=Int32.Parse(Console.ReadLine());
                for(i=0;i<A.Length;i++)
                {
                if (A>item)
                {
                loc=i;
                break;
                }
                }
                if (loc != -1)
                {
                    for (j = A.Length-1; j > loc; j--)
                    {
                        A[j] = A[j - 1];
                        A[loc] = item;
                    }
                }
                for(k=0;k<A.Length;k++)
                Console.WriteLine(A[k]);

اسف نسيت ارد السلام

وعليكم السلام ورحمة الله وبركاته

#4

السلام عليكم ورحمه الله وبركاته

اخي برضه عليك تحديد مكان الادراج في المصفوفة ..

1

.:: Wish to become better and better ::.

#5

لالالا ما انا المفروض بدخل قيم مرتبه

#6

؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

#7

السلام عليكم.

شوف هذا الكود و قارنه مع كودك حتى تعرف مكان الخطأ:

            int item, loc, i, j, k;
            loc = -1;


            int[] A = new int[1000];
            Console.WriteLine("Please enter size");
            int size = int.Parse(Console.ReadLine());

            for (i = 0; i < size; i++)
            {
                A = int.Parse(Console.ReadLine());
            }

            Console.WriteLine("plz enter the item you want to insert");
            item = Int32.Parse(Console.ReadLine());
            for (i = 0; i < size; i++)
            {
                if (A > item)
                {
                    loc = i;
                    break;
                }
            }
            if (loc != -1)
            {
                for (j = size; j >= loc; j--)
                {
                    A[j] = A[j - 1];
                }
                A[loc] = item;
            }
            else
                A[size] = item;
            for (k = 0; k < (size+1); k++)
                Console.WriteLine(A[k]);
#8

السلام عليكم ورحمه الله وبركاته

اخي جرب الكود التالي

static int[] arr = new int[50];
    	static int count = 0, location;
    	static void Main(string[] args)
    	{
        	Initialize();
        	Insert(1);
        	Insert(1);
        	Insert(9);
        	Insert(6);
    	}
    	static void Initialize()
    	{
        	Console.Write("Initial Array:\t");
        	arr[0] = 3;
        	arr[1] = 7;
        	arr[2] = 8;
        	count = 3;
        	Display();
    	}
    	static void Insert(int item)
    	{
        	Console.Write("{0} inserted:\t", item);
        	location = -1;
        	++count;
        	for (int i = 0; i < count; i++)
        	{
            	if (arr > item)
            	{
                	location = i;
                	break;
            	}
        	}
        	if (location == -1)
            	arr[count - 1] = item;
        	else
        	{
            	for (int i = count - 1; i > location; i--)
                	arr = arr[i - 1];
            	arr[location] = item;
        	}
        	Display();
    	}
    	static void Display()
    	{
        	for (int i = 0; i < count; i++)
            	Console.Write("{0}\t",arr);
        	Console.WriteLine();
    	}

.:: Wish to become better and better ::.

#9

السلام عليكم يمكنك استخدام هذا

            
            int[] A = new int[1000];
            Console.WriteLine("Please enter size");

            for ( i = 0; i <A.length; i++)

او ان تستخدم ال link list مثال كالتالي

IList<int> list = new LinkedList<int>();

list.Add(1);

list.Add(2);

foreach(int n in list)

  Console.Write(n);
#10
Adel Khayata كتب:

السلام عليكم.

شوف هذا الكود و قارنه مع كودك حتى تعرف مكان الخطأ:

            int item, loc, i, j, k;
            loc = -1;


            int[] A = new int[1000];
            Console.WriteLine("Please enter size");
            int size = int.Parse(Console.ReadLine());

            for (i = 0; i < size; i++)
            {
                A = int.Parse(Console.ReadLine());
            }

            Console.WriteLine("plz enter the item you want to insert");
            item = Int32.Parse(Console.ReadLine());
            for (i = 0; i < size; i++)
            {
                if (A > item)
                {
                    loc = i;
                    break;
                }
            }
            if (loc != -1)
            {
                for (j = size; j >= loc; j--)
                {
                    A[j] = A[j - 1];
                }
                A[loc] = item;
            }
            else
                A[size] = item;
            for (k = 0; k < (size+1); k++)
                Console.WriteLine(A[k]);

السلام عليكم

اولا اشكرك جدا على المساعدة

بس انا جيت دخلت الاعداد دى

7

5

4

3

2

وبعد كدة عايز ادرج ال6 بيطلعلى exception مش عارف ليه ؟؟؟

انما لو الادراج في اخر عنصر ايبقى مظبوط عادى ؟؟؟

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

S.E.Mohammed كتب:

السلام عليكم يمكنك استخدام هذا

            
            int[] A = new int[1000];
            Console.WriteLine("Please enter size");

            for ( i = 0; i <A.length; i++)

او ان تستخدم ال link list مثال كالتالي

IList<int> list = new LinkedList<int>();

list.Add(1);

list.Add(2);

foreach(int n in list)

  Console.Write(n);

المطلوب استخدام نفس الكود .... برجاء مراجعة الرد السابق ... وشكرا مقدما

انا عرفت الخطأ في هذا المكان

if (loc != -1)

{

for (j = size; j >= loc; j--)

{

A[j] = A[j - 1];

}

A[loc] = item;

}

else

A = item;

بس أيضا لسة يوجد خطأ ؟؟؟؟؟

#11
A7meD SofT كتب:

لالالا ما انا المفروض بدخل قيم مرتبه

أخي : أنت ذكرت في رد سابق أن القيم المدخلة مرتبة !!

#12

لالالالا بس انا كتبت في رد أخر ان القيم مرتبة معلش دى نسيتها سهواً

ومنتظر تعديل البرنامج

وشكرا جزيلا مقدما

#13

تفضل الكود:

            int item, loc, i, j, k;
            loc = -1;


            int[] A = new int[1000];
            Console.WriteLine("Please enter size");
            int size = int.Parse(Console.ReadLine());

            for (i = 0; i < size; i++)
            {
                A = int.Parse(Console.ReadLine());
            }

            Array.Sort<int>(A, 0, size);

            Console.WriteLine("plz enter the item you want to insert");
            item = Int32.Parse(Console.ReadLine());
            for (i = 0; i < size; i++)
            {
                if (A > item)
                {
                    loc = i;
                    break;
                }
            }
            if (loc != -1)
            {
                for (j = size; j >= loc; j--)
                {
                    A[j] = A[j - 1];
                }
                A[loc] = item;
            }
            else
                A[size] = item;
            for (k = 0; k < (size+1); k++)
                Console.WriteLine(A[k]);

            Console.ReadLine();
1
#14

ألف شكر البرنامج تمام الله ينور يا باش مهندس جزاك الله كل خير

مواضيع مشابهة