Filter löschen
Filter löschen

The greatest common divisor

2 Ansichten (letzte 30 Tage)
Kentman
Kentman am 13 Okt. 2014
Kommentiert: Kentman am 17 Okt. 2014
Hello,
-I have this matlab code:
function [nsd]=NaivniNSD(a,b)
if a>b
a=a-b;
else
b=b-a;
end
end
nsd=a;
- when i write (a=40;b=50) i still have the answer nsd=10 in matlab. a logical analysis will be b=10 so that nsd=a=40 not 10. I don't know what is the thing that i couldn't undersntand. Thank you.

Akzeptierte Antwort

Guillaume
Guillaume am 13 Okt. 2014
If that is indeed the function you are using, I'm surprised you don't get an error. Your
nsd = a;
is outside the function body. Put it before the last end.
  3 Kommentare
Guillaume
Guillaume am 13 Okt. 2014
Bearbeitet: Guillaume am 13 Okt. 2014
I don't really understand your comment. As I said, in the code you've posted the nsd=a; is outside the body of the function. The 2nd end ends the function.
If it's not outside, then the code you've posted is not the one you're using. And the question is then, what is the actual code you're using?
Kentman
Kentman am 17 Okt. 2014
The thing was in my understanding of while cycle and its behaviour to a and b,now everything is working well, even with 'end'is written like this. Thank you anyway.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by