skapa funktion med logaritm +villkor
Hej det är så att jag ska göra en uppgift som lyder såhär:
Skriv en funktion min_logaritm som beräknar den naturliga logaritmen av ett tal x.
Indata till funktionen ska vara värdet x och utdata ska vara logx om talet x är positivt ( > 0 ). Om x inte är positivt ska logx tilldelas strängen 'NotDefined'
Min kod är:
function logx = min_logaritm(x)
%Skriv in din lösning nedan
logx=x
logx='NotDefined'
end
Men jag får tydligen fel åp logx=x etc, hur skall jag tänka ?
Hur menar du att du "får fel på logx=x"? Får du något felmeddelande, i sådant fall vad?
Testa:
Function min_logaritmx = log(x)
min_logaritmx=x
I frågan så är denna kod given :
function logx = min_logaritm(x)
%Skriv in din lösning nedan
logx=x;
end
Jag skall lägga till i koden så att x är logx(utdata) när x>0 och när x<0 så tilldelas logx strängen Nodetdefined. Men jag vet inte hur jag skall börja,
Jag lade till som ni kan se i koden nedan. Logx=log(x) men vet inte hur jag lägger till så att strängen visas när x är mindre än noll.
function logx = min_logaritm(x)
%Skriv in din lösning nedan
logx=x;
logx= log(x)
end
Har du talas om en while loop?
Typ:
While x>0
logx=x
Else if x<0
Disp ('NaN')
End
Min kod kan vara fel, då jag själv inte är så bra på det, men jag det är nog så man ska göra. Tips om du fastnar är att läsa felmeddelanden du får och sök upp dem på nätet, det kan vara bra.
Soderstrom skrev:Har du talas om en while loop?
Typ:
While x>0
logx=x
Else if x<0
Disp ('NaN')
End
Min kod kan vara fel, då jag själv inte är så bra på det, men jag det är nog så man ska göra. Tips om du fastnar är att läsa felmeddelanden du får och sök upp dem på nätet, det kan vara bra.
Jag får fel på else när jag skriver på ditt sätt. felmeddelandet är : Illegal use of reserved keyword "else". detsamma gäller om jag skriver elseif eller else if
Jag löste det till slut!
function logx = min_logaritm(x)
%Skriv in din lösning nedan
logx=x;
if x>0
logx= log(x)
else x<0
logx = ('NotDefined')
disp(logx)
end
end