MATLAB算法求程序流程图

2019-07-17 13:42发布

求程序流程图,谢谢for ii=1:ceil(MaxSection)                    target_in = 0;                                                                                                                                                                         target_in(1:count_i(ii),1:7) = target_i(ii,1:count_i(ii),1:7);                                                                                                                                                                                                                                                                                                                                                                                                                                                       flag_display = 0;                   %进行比较标志,0进行比较,1退出比较                                                                                                                   max_differ_time = 3;                %允许的最大不同目标间的时间差值                                                                                                                   max_differ_vel = 1;                                                                                                                                                                   max_differ_magni = 2;                                                                                                                                                                 max_differ_range = 1;                                                                                                                                             
                    num_save_require = N(p_scanmode_1); %当前比较需要获得的目标数,最初“时间”比较为N,                                                                                            num_save_sucess = 0;                %当前比较后所保存的目标数                                                                                                                         pre_num_save_sucess = 0;                                                                                                                                                              num_in = count_i(ii);                 %当前比较输入的目标数                                                                                                                             target_in_tem = 0;                  %当前比较输出目标                                                                                                                                 target_tem = 0;                     %当前比较获得的保存目标                                                                                                                           target= zeros(N(p_scanmode_1),NN);    %所有比较后目标                                                                                                                                 num_save_sucess_sum = 1;                                                                                                                                                              flag_v_compare = 1;                                                                                                                                               
                    %%%%%%%%%%%%%                %%%%%%%%%%%%%                %%%%%%%%%%%%%                                                                                                               %“时间”比较%                %“时间”比较%                %“时间”比较%                                                                                                            %%%%%%%%%%%%%                %%%%%%%%%%%%%                %%%%%%%%%%%%%                                                                                                               if flag_display == 0 && num_in > num_save_require;                                                                                                                                        %将前"num_save_require"个时间为正值目标赋值于target_tem                                                                                                                               ii=1;               %计数"num_save_require"个目标                                                                                                                                     for i=1:num_in                                                                                                                                                                            if  ii > num_save_require;                                                                                                                                                                break;                                                                                                                                                                            end                                                                                                                                                                                   if target_in(i,7)>0;                                                                                                                                                                      target_tem(ii,1:NN) = target_in(i,1:NN);                                                                                                                                              ii = ii + 1;                                                                                                                                                                      end                                                                                                                                                                               end                                                                                                                                                                                   %target_tem中保存目标的数量                                                                                                                                                           pre_num_save_sucess = ii-1;                                                                                                                                                           left_num = i - 1;                                                                                                                                             
                        %如果”..“正值目标大于"num_save_require"个,则在本轮进行余下比较(此时剩余的目标中也许存在可能“..”更小目标                                                                          if pre_num_save_sucess == num_save_require && left_num ~= num_in;                                                                                             
                            %1,target_tem中的“num_save_require”个目标按“..”排序                                                                                                                               if num_save_require > 1;                                                                                                                                                                  for i = 1:num_save_require-1;                                                                                                                                                             for j = i+1:num_save_require;                                                                                                                                                             if target_tem(i,7) > target_tem(j,7);                                                                                                                                                     tem(1:NN) = target_tem(i,1:NN);                                                                                                                                                       target_tem(i,1:NN) = target_tem(j,1:NN);                                                                                                                                              target_tem(j,1:NN) = tem(1:NN);                                                                                                                                                   end                                                                                                                                                                               end                                                                                                                                                                               end                                                                                                                                                                               end                                                                                                                                                      
                            %2,剩余目标与target_tem中目标“..”比较                                                                                                                                               for i = 1:num_in;                                                                                                                                                                         for j = 1:num_save_require;                                                                                                                                                               result_compare = target_in(i,7) - target_tem(j,7);                                                                                                                                    if result_compare < 0 && target_in(i,7) > 0;                                                                                                                                              %最后一个保存的目标被输入目标替代                                                                                                                                                     %前面“num_save_require-1”个目标中一个被目标替代                                                                                                                                     if j == num_save_require;                                                                                                                                                                 target_tem(num_save_require,1:NN)=target_in(i,1:NN);                                                                                                                              else                                                                                                                                                                                      for k=num_save_require:-1:j+1;                                                                                                                                                            target_tem(k,1:NN) = target_tem(k-1,1:NN);                                                                                                                                        end                                                                                                                                                                                   target_tem(j,1:NN) = target_in(i,1:NN);                                                                                                                                           end                                                                                                                                                                                   break;                                                                                                                                                                            elseif result_compare == 0                                                                                                                                                                break;                                                                                                                                                                            end                                                                                                                                                                               end                                                                                                                                                                               end                                                                                                                                                      

                            %3,target_temtarget_in中所有目标间差值在max_differ_..以内的比较,如果                                                                                                               %max_differ_..=0,则严格按大小排序。                                                                                                                                                  if max_differ_time == 0                                                                                                                                                                   flag_display = 1;     %此时已经有(num_save_sucess)个目标成功保存                                                                                                                    target(num_save_sucess_sum:num_save_sucess_sum + pre_num_save_sucess-1,1:NN)=target_tem(1:pre_num_save_sucess,1:NN);                                                              else                                                                                                                                                                                      if num_save_require > 1                                                                                                                                                                   target_compare = 0;   %比较值                                                                                                                                                         for i = 1:num_save_require-1                                                                                                                                                              if target_tem(num_save_require,7) - target_tem(i,7) < max_differ_time;                                                                                                                    target_compare = target_tem(i,7);                                                                                                                                                     break;                                                                                                                                                                            end                                                                                                                                                                               end                                                                                                                                                                                   if target_compare ~= 0;             %此刻由于target_tem保存的目标需要比较的数据太相近,所以需要在下轮比较中进行相近数据比较                                                               num_save_sucess = i-1;          %成功保存的数据也因此减小                                                                                                                         else                                                                                                                                                                                      num_save_sucess = i;                                                                                                                                                                  target_compare = target_tem(num_save_require,7);                                                                                                                                  end                                                                                                                                                                               else                                                                                                  &n
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。