1) if
if (condition)
---------------
---------------
---------------
end
2) condition
ex) if (a > 3.4)
relational operator <,>,==,<=,>=,~=
logical operator &,|,~
1 < a < 3 (X) % 이런 표현은 절대 쓰지 말거라
(1 < a) & (a < 3) (O)
3) warning : do not exactly compare two real numbers (OK for integer)
a == b or a ~= b % try a = 3, b = sqrt(3)^2
abs(a-b) < 1e-8 % 두 수의 차이가 내가 생각한 아주 작은 값보다 작으면 같은 수라고 보겠다는 말, 두 수가 같지 않다는 것으로 만드려면 > 로.
4) elseif & else
if (condition 1)
---------------
---------------
---------------
elseif (condition 2) % do not put space (else if)
---------------
---------------
elseif (condition 3) % do not put space (else if)
---------------
---------------
else
---------------
---------------
end
5) == cannot compare arrays with different lenghts
a = [1 2 3 4]
b = [1 2 3]
a == b
6) use is equal when comparing arrays
isequal(a,b)
ex)
if isequal(a,b) % a == b → program stops with error
disp('hello')
end
7) for-loop (loop는 한마디로 반복문)
for k = 1:20
---------------
---------------
---------------
---------------
end
ex)
N = input('Type N --> ');
s = 0;
for i = 1:N
s = s + i;
end
display('answer : ')
disp(s)
8) while-loop
while (condition)
---------------
---------------
---------------
---------------
end
ex)
N = input('Type N --> ');
s = 0;
i = 0;
while i <= N
s = s + i; % 주의, 까딱 잘못하면 한번 더(덜) 돈다
i = i + 1;
end
display('answer : ')
disp(s)
9) infinite loop
while 1 % can be any number except 0