# Imbedded If statement in Function help!

1 vue (au cours des 30 derniers jours)
Brittany Isbister le 12 Fév 2021
Commenté : Paul Hoffrichter le 13 Fév 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 commentairesAfficher AucuneMasquer Aucune
Walter Roberson le 13 Fév 2021
n is not defined in the function.
Paul Hoffrichter le 13 Fév 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.

Connectez-vous pour commenter.

### Réponses (1)

Paul Hoffrichter le 12 Fév 2021
Did you know that
>> logical(1) + logical(1)
ans =
2
and that
(age>50)
is a logical?
##### 5 commentairesAfficher 3 commentaires plus anciensMasquer 3 commentaires plus anciens
Paul Hoffrichter le 13 Fév 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 le 13 Fév 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

Connectez-vous pour commenter.

### Catégories

En savoir plus sur Graphics dans Help Center et File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by