필터 지우기
필터 지우기

Is there any equivalent keyword 'goto' in matlab not in simulink but in matlab coding

조회 수: 3 (최근 30일)
I want to pass control to other section of code if certain condition becomes true something like this we do in C, code snippet attached for reference.
for k = ele_search_start_edx : ele_search_end_idx
if data(k) =='C' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
n= n+1;
goto next_node_search_function
elseif data(k) == 'N'
Element_arr(n) = extractBetween(data(ele_search_start_idx1 : ele_search_end_idx1),['=','{',' '],[' ','}'])
n= n+1;
goto next_node_search_function
elseif data(k) =='L' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
n= n+1;
goto next_node_search_function
end
end

채택된 답변

Jan
Jan 2022년 6월 27일
No, there is no GOTO in Matlab and it should be avoided strictly in good code.
Maybe:
function YourFunc
n = 123; % ???
for k = ele_search_start_edx : ele_search_end_idx
if data(k) =='C' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
break;
elseif data(k) == 'N'
Element_arr(n) = extractBetween(data(ele_search_start_idx1 : ele_search_end_idx1),['=','{',' '],[' ','}'])
break;
elseif data(k) =='L' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
break
end
end
next_node_search_function(ElementArr, n + 1)
end

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Array Geometries and Analysis에 대해 자세히 알아보기

제품


릴리스

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by