본문 바로가기
Study/Algorithm_정보처리기사

[정보처리기사][알고리즘][수학] 소수의개수

by 푸민 2015. 8. 14.
반응형



Q. 배열 A(99)에 2~100 사이의 정수를 기억시킨 후 이 배열을 이용하여 소수의 개수를 구하시오.


1. 숫자가 저장될 배열 A를 선언한다.

 

2. K는 1씩 누적되며 증가하는 변수인데, 2부터 배열에 저장되므로 1로 초기화한다.


3. K를 2에서 100까지 변화시키기 위해 1씩 증가시킨다.


4. 99개의 배열에 2 ~ 100까지의 수를 저장한다. 1번째에 2가 저장됨을 생각한다.


5. K가 100보다 크거나 같으면 데이터입력을 모두 마친것이므로 Yes로 가고, 아니면 다음 입력을 위해 No로 간다.


1) No일 경우, 3으로 간다.


2) Yes일 경우, 6으로 간다.


6. 배열의 위치를 지정한 i는 1씩 누적되며 증가하는 변수이므로 0으로 초기화한다. J는 소수의 개수를 누적하기 위한 변수이므로 0으로 초기화한다.


7. i를 1에서 99까지 변화시키기 위해 1씩 증가시키낟.


8. i가 99보다 크면 100까지 소수 판별을 모두 마친 것이므로 Yes로 가고, 아니면 다음계산을 위해 No로 간다.


1) Yes일 경우, 소수의 개수 J를 출력하고 끝낸다.


2) No일 경우, 소수 여부를 판별하여 다음에 수행할 작업을 결정한다. 어떤 수의 배수는 소수가 아니며, 그 자리에는 0이 들어있다는 것을 생각한다.


A. Yes일 경우, 7로 간다.


B. No일 경우, 소수의 개수를 1씩 증가시킨다.


C. 소수를 구한 현재 배열으 ㅣ위치 i에서부터 그 소수에 대한 배수가 들어있는 위치를 계산히기 위한 처리를 한다.


D. 소수의 배수는 소수가 아니다. 현재 배열의 위치에 이번에 찾은 소수를 더해 주면 그 소수의 배수가 들어 있는 위치가 계산된다.


E. M이 99보다 크면 다음 숫자의 소수 여부를 검사하기 위해 Yes로 가고, 아니면 현재 소수의 다음 배수가 들어 있는 위치에 0을 기억시키기 위해 No로 단다.


A) No일 경우, C로 간다.


B) Yes일 경우, 7로 간다.


해당 글은 제가 만들 어플을 기준으로 작성하였습니다.

더 많은 정보는 알고리즘 어플을 이용해주세요.

반응형

댓글