[Linux] 쉘 스크립트로 함수를 이용한 소수 판별기 만들기

2019. 4. 3. 11:29학교 수업 정리/Linux

반응형

 

 

 

 

 

 

오늘은 리눅스 프로그래밍 시간에 쉘 스크립트를 이용하여 간단한 소수 판별기를 만들었다.

 

라즈베리파이에 있는 라즈비안으로 개발하였으며 vim을 사용하였다.

 

 

 

 

 

 

 

처음 써본 쉘 스크립트

 

 

 

 

 

 

 

처음엔 기존의 언어와 구성이 달라 조금 헷갈렸지만 하다 보니 익숙해졌다.

 

 

 

 

중괄호 대신 문장으로 표현되고, 괄호가 두개인것이 특징인듯 하다

그 이외에는 c언어와 비슷한 것 같다.

 

 

 

 

 

알고리즘은 입력받은 num을 먼저culsnum에 전달한다. 그러면 culsnum함수에서 j를 num만큼 돌리고, i를 j-1만큼 돌린다. 이렇게 2중 for문을 돌리는 이유는 소수를 판별해야 하기때문에 소수의 특징인 자기 자신과 1로 밖에 나누어 떨어지는 수가 없다는 점을 이용하여 i는 2부터 시작하고 , j에 못미치는 j-1만큼 i가 늘어난다. if문에서 j와i의 나머지가 0이면

첫째 for문을 빠져나온다. 빠져나왔을때 i가 j와 같으면 그 수는 결국 소수 이므로 2부터 num까지의 소수를 판별할 수 있게된다.

 

 

 

 

 

 

 

터미널 창에서 결과를 확인한 모습.

 

 

 

 

 

 

이와 같이 50을 입력하면 2부터 50까지 소수를 모두 출력하게 된다.

 

 

 

 

 

 

반응형