اطلاعیه

Collapse
No announcement yet.

پیدا کردن نزدیک ترین عدد در متلب

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

    پیدا کردن نزدیک ترین عدد در متلب

    سلام دوستان.
    خسته نباشید
    من یه مشکلی دارم.
    دو تا ماتریس جدا دارم که یکی مثلا [1 2 6 0.2 0.6 5 9 0.6] و دومی از صفر هستش با گام 0.1
    میخوام نزدیکترین اعداد به ماتریس اول رو به ماتریس دوم جدا کنم به صورتی که نزدیکترین عدد به 0.1 مشخص بشه.بعد نزدیکترین به 0.2 و همینجوری تا آخر.
    خودم یه برنامه دارم.فقط بعضی اعداد ماتریس اول خیلی نزدیک هم هستن و به همین دلیل مثلا برای 0.1 سه تا عدد میاره.میخوام نزدیکترین انتخاب بشه و کنار گذاشته بشه و بره دنبال بعدی
    ممنون

    #2
    پاسخ : پیدا کردن نزدیک ترین عدد در متلب

    با سلام

    می توانی یکی یکی اعداد نزدیک را پیدا کرده و از لیست اصلی حذف کنی

    کد:
    x = 0:.1:100;
    U = [1 2 6 0.2 0.6 5 9 0.6];
    
    [min_val,min_index]=min(abs(U(1) - x));
    x(min_index) = [];
    http://www.4shared.com/office/wspNnTsI/AMUZESH_JAMEE_MATLAB.html

    دیدگاه


      #3
      پاسخ : پیدا کردن نزدیک ترین عدد در متلب

      نوشته اصلی توسط متلب
      با سلام

      می توانی یکی یکی اعداد نزدیک را پیدا کرده و از لیست اصلی حذف کنی

      کد:
      x = 0:.1:100;
      U = [1 2 6 0.2 0.6 5 9 0.6];
      
      [min_val,min_index]=min(abs(U(1) - x));
      x(min_index) = [];
      من این کارو انجام دادم ولی همون از 0تا 100 رو با 0.1 آورد.
      تو همین ماتریس

      0]
      0.04699
      0.1719
      0.2500
      0.56199
      0.6090
      0.62400
      0.6400
      0.67099
      1.10800
      1.1390
      1.15500
      1.31100
      1.34200
      1.8100
      1.8880
      1.9350
      1.96600
      2.05900
      [2.13700
      من میخوام نزدیکترین عدد به 0.1 بعد به 0.2 الی آخر رو پیدا کنم.طوری که اگه نزدیکترین عدد به 0.1 پیدا شد بره دنبال نزدیکترین عدد به 0.2

      دیدگاه


        #4
        پاسخ : پیدا کردن نزدیک ترین عدد در متلب




        یک for هم می خواست

        کد:
        U_ = zeros(size(U));
        x = 0:.1:100;
        
        for k = 1:numel(U)
          [min_val,min_index] = min(abs(x - U(k) ));
          U_(k) = x(min_index);
          x(min_index) = [];
        end
        http://www.4shared.com/office/wspNnTsI/AMUZESH_JAMEE_MATLAB.html

        دیدگاه

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