반응형
이번 포스팅에서는 MATLAB 의 내장 함수 중 primes(), isprime()에 대해 알아보고, 소수인지 판별해주는 함수를 직접 작성해 보겠습니다.
- 내장 함수 중 소수를 생성해주는 함수로는 primes(n) 라는 함수가 있습니다. 이 함수는 n 보다 작은 소수를 생성해 줍니다.
아래 예는 primes() 함수를 사용하여 30보다 작은 소수들을 생성한 것입니다.
- 소수인지 판별하는 함수는 isprime(K) 라는 함수가 있습니다. 이 함수는 K 가 소수면 1 아니면 0을 반환하게 됩니다.
사용법은 다음과 같습니다.
- 그럼 이제 소수인지 판별하는 함수를 직접 코딩 해 보죠. 함수 이름은 My_isprime() 이라 해 보죠.
제가 짠 함수는 아래와 같습니다.
일단 벡터나 매트릭스 입력에 대해서도 동작하게 하기 위해서 for ~ end 문이 두 개가 들어 갔고요.
다른 부분들은 주석을 보시면 쉽게 아실 수 있을 겁니다.
그런데 위 코드에서 주의 하실 점이 있습니다.
바로 빨간색 네모 부분인데요.
if 문의 조건이 벡터나 매트릭스 일 때는 모두가 참이어야 if 문 안의 코드가 실행 된다는 것을 염두에 두셔야 합니다.
아래 예 같은 경우에는 1 이 2보다 작으니깐 2보다 큰 수를 넣으라고 에러를 발생시키죠.
2 이상의 값을 넣으면 matrix 입력에 대해서도 정상적으로 동작하는 것을 확인 할 수 있습니다.
반응형
'programming language > MATLAB' 카테고리의 다른 글
MATLAB .* ./ .^ 연산 (0) | 2011.04.01 |
---|---|
MATLAB index (0) | 2011.04.01 |
MATLAB shortcut, 단축키 설정 (0) | 2011.04.01 |
MATLAB 최대공약수 gcd(), 최소공배수lcm() (0) | 2011.03.30 |
MATLAB diag(), eye(), zeros(), ones() (2) | 2011.03.27 |
MATLAB persistent (2) | 2011.03.27 |
MATLAB contour 등고선 그리기 (0) | 2011.03.27 |
MATLAB, Newton method 를 이용하여 해를 구해 보자 (5060) | 2011.03.27 |
댓글