# Imbedded If statement in Function help!

1 visualización (últimos 30 días)
Brittany Isbister el 12 de Feb. de 2021
Comentada: Paul Hoffrichter el 13 de Feb. de 2021
Hi all!
I am trying to write a function that allows me to add up all of my inputs given the conditions in my code. I am trying to make it so I can add it up to see what the help index is. I'm pretty sure my function code is wrong. If you can help tell me where I can fix it I would greatly appreciate it! Thank you! in advance
function [helpIndex]=needsHelp(age,duration,burden,sati); %function to calculate the helpIndex using age(yrs),duration(months),burden,and satisfaction
if age>50 % If age is greater than 50 add 1 point
helpIndex=n+1
elseif duration>60% If duration is greater than 60 add 1 point
helpIndex=n+1
elseif burden>70% If burden is greater than 70 add 1 point
helpIndex=n+1
elseif burden>70 && sati<50 %Then if burden is greater than 70 and satisfaction is less than 50 add an additional point.
helpIndex=n+1
end
##### 2 comentariosMostrar NingunoOcultar Ninguno
Walter Roberson el 13 de Feb. de 2021
n is not defined in the function.
Paul Hoffrichter el 13 de Feb. de 2021
Here is an excellent video course that shows you how to program - no experience necessary. They use MATLAB as the programming language (also, no experience necessary). You can take the free version by hitting the audit button.

Iniciar sesión para comentar.

### Respuestas (1)

Paul Hoffrichter el 12 de Feb. de 2021
Did you know that
>> logical(1) + logical(1)
ans =
2
and that
(age>50)
is a logical?
##### 5 comentariosMostrar 3 comentarios más antiguosOcultar 3 comentarios más antiguos
Paul Hoffrichter el 13 de Feb. de 2021
These tests are independent of each other. Since you want to add points, make each test condition an if-statement with no elseif or else. Before the first test, set your initial condition for helpIndex (that is, if all conditions fail, set the desired return vfalue) .
Paul Hoffrichter el 13 de Feb. de 2021
>> so I could plug in different numbers
This a common need when modeling simulations. A common way to do this is to put all your parameters into one location, or in a separate parameters file, which would look like
ThreshAge = 50; ThreshDuration = 60; % etc.
% test conditions look like
% (age>ThreshAge) etc.
if (age>ThreshAge)
helpIndex = helpIndex + 1;
end

Iniciar sesión para comentar.

### Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

### Community Treasure Hunt

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

Start Hunting!

Translated by