查看: 458|回復: 2|關注: 0
打印 上一主題 下一主題

[已解決] 如何做到反復循環?

[復制鏈接]

新手

15 麥片

財富積分


050


5

主題

19

帖子

0

最佳答案
跳轉到指定樓層
1#
本帖最后由 IAe 于 2020-2-3 17:29 編輯

X為行數(行數假設為500)
4列數據,情況如下:
A=rand(1:100)
B=A-rand(1:5)
C=A+rand(1:5)
D是輸出項,也是判定條件
當D=1時,下一行的A和B進行比較,A大于B的最大值時,對應行的D為1,否則為0;
當D=0時,下一行的A和C進行比較,A小于C的最小值時,對應行的D為0,否則為1;
...

這樣形成的一個“無限循環”。

具體的判定如下:


X   A    B    C    D
1   30  25  33   1

2   35  32  38   1

3   36  31  40   1

4   29  28  32   0

5   27  24  30   0
6   35  33  39   1
7   39  36  42   1
...  ...  ...  ...  ...


回復主題 已獲打賞: 0 積分

舉報

MATLAB 基礎討論
版塊優秀回答者

入門

491 麥片

財富積分


50500


1

主題

156

帖子

61

最佳答案
  • 關注者: 6
2#
發表于 2020-1-22 21:39:52 | 只看該作者 |此回復為最佳答案
你好,以下代碼是不是你需要的。
  1. %% 構造矩陣
  2. N = 10;
  3. A = randi(100,N,1);
  4. B = A - randi(5,N,1);
  5. C = A + randi(5,N,1);

  6. % D 賦值為全零向量,第一個值為1
  7. D = zeros(N,1);
  8. D(1) = 1;

  9. %% 循環
  10. TF = true;       % 判斷何時改變 D 的符號(邏輯值)
  11. indexStart = 1;  % 記錄 D 改變符號的位置

  12. for ii = 2:N
  13.     if 1 == D(ii-1)
  14.         Bmax = max(B(indexStart : ii));
  15.         TF = A(ii) >= Bmax;
  16.         % 與 B 的最大值比較
  17.         % 滿足條件 D=1,不改變下次計算的起始位置
  18.         % 不滿足條件則 D=0 且改變下次計算的起始位置
  19.         if TF            
  20.             D(ii) = 1;
  21.         else
  22.             indexStart = ii;
  23.         end
  24.     else
  25.         Cmin = min(C(indexStart : ii));
  26.         TF = A(ii) >= Cmin;
  27.         % 與 C 的最小值比較
  28.         % 滿足條件 D=1,且改變下次計算的起始位置
  29.         % 不滿足條件則 D=0,不改變起始位置(實際上無需任何操作)
  30.         if TF
  31.             D(ii) = 1;
  32.             indexStart = ii;
  33.         end
  34.     end
  35. end
復制代碼



大過年的,我竟然還在回答別人的問題!!
你這個 ID 我都認識了。
回復此樓 已獲打賞: 0 積分

舉報

新手

15 麥片

財富積分


050


5

主題

19

帖子

0

最佳答案
3#
 樓主| 發表于 2020-1-22 22:00:18 | 只看該作者
gopher 發表于 2020-1-22 21:39
你好,以下代碼是不是你需要的。

真的辛苦了,太感謝了,新手一枚,感覺好多都要學習。。。。現在什么都實現不了。。。。
回復此樓 已獲打賞: 0 積分

舉報

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

關閉

站長推薦上一條 /4 下一條

快速回復 返回頂部 返回列表
哪一款德州扑克还能玩 吉林长春麻将 闲来麻将赚钱 河南新快赢481走势图最近60期 最准金牌三尾中特 英超宣布停赛 血流麻将 二分彩不会输的方法 中超什么时候复赛 琼崖海南麻将手机版 捕鱼赢现金是骗局吗 股票入门知识软件 网盛棋牌一些大厅下载 上期出尾下期出尾规律 股票模拟软件 棋牌室一小时多少钱? 2020年彩库宝典