اطلاعیه

Collapse
No announcement yet.

مقایسه تساوی دو ارایه

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مقایسه تساوی دو ارایه

    سلام دوستان میخوام اگر تساوی این دو ارایه برقرار یه کاری انجام بشه لطفا راهنمایی به زبان c
    کد:
    char c[4][]={0x03,0x42,0x80,0xc1};
    
    char data[4][]=getch;

    #2
    پاسخ : مقایسه تساوی دو ارایه

    دو تا آرایه را باید درایه به درایه باهم مقایسه کنید . بنابر این تو یک حلقه با یک اندیس افزاینده درایه های دوتا آرایه رو باهم مقایسه میکنید.
    تنها موردی که همه آدما یقین دارن خدا در حقش زیاد لطف کرده
    داشتن عقله زیادتر از دیگر آدم ها است

    دیدگاه


      #3
      پاسخ : مقایسه تساوی دو ارایه

      دوست عزیز میشه یه نمونه مثال بزنید؟

      دیدگاه


        #4
        پاسخ : مقایسه تساوی دو ارایه

        یه مثال ساده از مقایسه دو آرایه باهم به زبان C:

        [code=c]int a1[5]={0x12,0x18,0x52,0xA3,0x10};
        int a2={0x11,0x22,0x33,0x44,0x50};

        for(i=0;i<5;i++)
        {
        if(a1[i]==a2[i])
        c++;
        }[/code]

        کلیت قضیه میشه یه همچین چیزی. توو این مثال (با فرض اینکه مقدار اولیه c صفر باشه) میاد تعداد عناصر منتاظر از آرایه ها که باهم برابر هستند رو میشماره و تووی c ذخیره میکنه.

        دیدگاه


          #5
          پاسخ : مقایسه تساوی دو ارایه

          یک مثال پیچیده تر:

          [code=c] public int[] a1 = {1,2,3,4,5};
          public int[] a2 = { 1, 2, 3, 4, 5 };
          public int[] a3 = { 1, 2, 3, 4, 6 };

          public string[] b1 = { "a", "ab", "abc", "abcd" };
          public string[] b2 = { "a", "ab", "abc", "abcd" };
          public string[] b3 = { "a", "ab", "abcd", "abc" };

          public double[] c1 = { 1.0, 2.1, 3.2, 4.3, 5.4 };
          public double[] c2 = { 1.0, 2.1, 3.2, 4.3, 5.4 };
          public double[] c3 = { 1.0, 2.1, 3.2, 4.3, 5.5 };

          private bool cmp_arrays<T>(T[] ar1, T[] ar2)
          {
          if (ar1.Length == ar2.Length)
          {
          for (int i = 0; i < ar1.Length; i++)
          {
          if (Convert.ToString(ar1[i]) != Convert.ToString(ar2[i]))
          {
          return false;
          }
          }
          return true;
          }
          else return false;
          }

          private void Form1_Load(object sender, EventArgs e)
          {
          if (cmp_arrays<int>(a1, a2)) label1.Text = "a1 = a2"; else label1.Text = "a1 != a2";
          if (cmp_arrays<int>(a1, a3)) label2.Text = "a1 = a3"; else label2.Text = "a1 != a3";
          //
          if (cmp_arrays<string>(b1, b2)) label3.Text = "b1 = b2"; else label3.Text = "b1 != b2";
          if (cmp_arrays<string>(b1, b3)) label4.Text = "b1 = b3"; else label4.Text = "b1 != b3";
          //
          if (cmp_arrays<double>(c1,c2)) label5.Text = "c1 = c2"; else label5.Text = "c1 != c2";
          if (cmp_arrays<double>(c1, c3)) label6.Text = "c1 = c3"; else label6.Text = "c1 != c3";
          } [/code]

          لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
          لطفاً سوالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
          با تمام وجود گناه کردیم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنیم چه می کند؟"دکتر شریعتی"
          اگر جایی که ایستاده اید را نمی پسندید، عوضش کنید شما درخت نیستید!! "پاسکال"
          یا به اندازه ی آرزوهایت تلاش کن یا به اندازه تلاشت آرزو کن. "شکسپیر"

          دیدگاه


            #6
            پاسخ : مقایسه تساوی دو ارایه

            ی str1 که در حافظه یSRAM و str2 را که در حافظه ی قرار دارد FLASHقرار دارد را با هم مقایسه می کند و در صورتی که str1<str2 علامت کوچکتر از صفر و در صورتی که str1=str2 مقدار 0 و در صورتی که str1>str2 باشد علامت بزرگتر از صفر را در خروجی می دهد
            کد:
            signed char strncmp(char *str1, char *str2, unsigned char n)
            این تابع n کارکتر از رشته ی str1 را با رشته ی str2 مقایسه می کند و در صورتی که str1<str2 علامت کوچکتر از صفر و در صورتی که str1=str2 مقدار 0 و در صورتی که str1>str2 باشد علامت بزرگتر از صفر را در خروجی می دهد
            کد:
            signed char strncmpf(char *str1, char flash *str2, unsigned char n)
            این تابع n کارکتر از رشته ی str1 که در حافظه ی SRAM قرار دارد را با رشته ی str2 که در حافظه ی FLASH قرار دارد مقایسه می کند و در صورتی که str1<str2 علامت کوچکتر از صفر و در صورتی که str1=str2 مقدار 0 و در صورتی که str1>str2 باشد علامت بزرگتر از صفر را در خروجی می دهد
            زلی باید ارایه های خود را به رشته تبدیل کنی.

            دیدگاه

            لطفا صبر کنید...
            X