How do i implement a while loop in my if loop

I am trying to create a while loop which only occurs if the value of one of my variables is zero, but my loop isnt working. how do i impliment this condition correctly?
if v == 0
a = 0;
elseif v~= 0
aStr = input ('What is your value for angle of projection?: ' , 's'); %angle of projection
a = str2double(aStr);
while ~isnumeric(a) || isnan(a) || ~isreal(a) || a > 90 || a == 0 && h == 0 ||
if isnan(a)
disp('This is not a number.')
elseif ~isreal(a)
disp('This is not a Real number')
elseif a > 90
disp('your angle of projection cannot be higher than a right angle')
elseif a == 0 && h == 0
disp('Your angle of projection must be greater than zero if your height is zero')
end
aStr = input ('What is your value for angle of projection?: ' , 's');
a = str2double(aStr);
end

3 个评论

In your matlab editor set a debug-stop at the first line (click on the tick just right of the line-number). Then run the script. Now you will enter into debug-mode, which allows you to inspect every variable in whatever way you want, plot, display or whatever. When doing so you'll figure out which conditions are messing up your script.
@Bjorn Gustavsson i found the mistake, i added an unnecesary or function which kept bugging out my code
There are no "if loops" in any programming language I know.

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Environment and Settings 的更多信息

产品

版本

R2022b

提问:

2022-11-22

评论:

Jan
2022-11-22

Community Treasure Hunt

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

Start Hunting!

Translated by