본문 바로가기

정보처리65

[정보처리기사][알고리즘][수학] 십진수 더하기 Q. 100건 이내의 1자리로 구성된 숫자를 더하는 순서도를 작성하시오. 단 12자리의 숫자는 각 자리가 분리되어 배열에 입력된다. 예를들어 999,999,999,999 라면 9 9 9 9 9 9 9 9 9 9 9 9 와 같이 입력된다. 단, 배열의 첫 번째 요소로 0을 입력받으면 계산후 결과를 출력하고 프로그램을 종료한다.단, 결과값이 들어갈 배열에는 초기 값으로 0이 들어가 있다고 가정한다. 1. 입력하는 값을 저장할 배열 A와 더한 값이 누적될 배열 B를 선언한다. 2. 한개의 수치를 12자리로 분리하여 각각 입력받아야 하므로 반복 변수 i가 1에서 12까지 1씩 증가하면서 반복한다. 1) 개별 숫자를 입력받는다. 그리고 반복을 체크한다. 3. A(1)의 값이 0이면 입력을 모두 마쳤으므로 자리올림.. 2015. 8. 15.
[정보처리기사][알고리즘][수학] 그레이코드 변환하기 Q. 0 또는 1로 입력되는 다섯 개의 숫자를 배열에 입력 받아 그레이 코드 또는 이진수로 변환하는 순서도를 완성하시오. 1. 입력된 자료와 변환된 자료가 저장될 배열을 선언한다. 2. 5개의 자료를 입력받기 위해 i는 1에서 5가 될때까지 1씩 증가하면서 반복한다. 1) 변환할 자료를 입력받는다. 반복을 체크한다. 3. 첫번째로 변환되는 비트를 옮긴다. 첫번째 비트는 이진수나 그레이코드에 관계없이 입력받은 자료를 그대로 옮기며, 실제 데이터는 입력받은 배열의 두번째부터라는 것을 생각한다. 4. 입력받은 자료의 첫번째 비트가 1이면 이진수로 변환하는 것이므로 Yes로 아니면 그레이코드로 변환하는 것이므로 No로 간다. 1) Yes일 경우, 3개의 비트를 이진수로 변환하기 위해 i는 1에서 3이 될때까지 .. 2015. 8. 15.
[정보처리기사][알고리즘][수학] 보수의 보수 구하기 Q. 2의 보수로 표현된 값의 2의 보수를 구하는 순서도를 완성하시오. 1. 자료가 저장될 배열 및 변수를 선언한다. 2. 5개의 자료를 입력받기 위해 i는 1에서 5가 될때까지 1씩 증가하면서 반복한다. 1) 2의 보수를 입력받는다. 그리고 반복을 체크한다. 3. 반복이 끝나면, 감수가 저장될 변수레 1을 저장한다. 4. i가 5부터 1이 될때까지 -1씩 증가하면서 반복한다. 2의보수를 1의 보수로 변환한다. 1) 1의 보수로 변환할 때는 2의 보수에서 1을 뺀다는 것을 생각한다. 2) 현재 감수가 1이고 배열의 현재 위치의 값이 0인 경우, 즉 첫번째 1이 나오기 전의 0일 경우에는 Yes로 가고 아니면 No로 간다. A. Yes일 경우, 감수에 1을 저장한다. 그리고 3)으로 간다. B. No일 경.. 2015. 8. 15.
[정보처리기사][알고리즘][수학] 2의 보수 쉽게 구하기 Q. 2의 보수 쉽게 구하기 1. 입력된 자료와 변환된 자료가 저장될 배열을 선언한다. 2. 반복 수행한다. 다섯번째 자리부터 2의 보수로 변환한다는 것을 생각한다. 1) 이진수를 그대로 2의 보수 배열에 옮기다가 반대로 변환해서 옮겨야 하는 경우가 어떤 상태인지 생각한다. A. Yes일 경우, 3번으로 간다. B. No일 경우, A(i)의 값을 그대로 B(i)로 옮긴다. 그리고 반복을 체크한다. 3. 처음으로 1이 나타났을 때 그 1을 어떻게 처리하는지 생각한다. 4. 처음으로 1이 나타난 자리 이전의 값들은 변환해서 2의 보수 배열에 옮긴다. 처음으로 나타난 자리가 i번째 이므로 i-1 번째 부터 1번째 까지 -1씩 증가하면서 반복한다. 1) 0은 1로, 1을 0으로 변환해서 옮겨야 할때는 어떻게 하.. 2015. 8. 15.