책 내용 질문하기
247쪽 질문입니다
도서
2019 시나공 정보처리기사 실기(산업기사포함)
페이지
247
조회수
243
작성일
2019-05-23
작성자
탈퇴*원
첨부파일

다른건 이해가 가는데 위부분에요.

 

A[1]=0 조건식에

 

A[1] 이 50이 나올수도 있지 않나요? 그럼 거짓으로 가서 B에 넣어주는거까진 이해가 갑니다. 거기서 왜 또 A[i]를 입력받는지 모르겠습니다.

 

그리고 왜 A[1]은 0인지 조건을 부여하는지 이해가 안가네요ㅠㅠ 

답변
2019-05-23 13:23:15

안녕하세요 길벗수험서 운영팀입니다.

 

해당 문제는 실제 출제되었던 문제로, 245쪽의 [문제]에서 언급한 조건들을 정확히 파악해야 합니다.

 

1. 100건 이내의 12자리 숫자

2. 각 숫자는 배열에 분리되어 입력

3. 배열의 첫 번째 요소(A[1])에 0이 입력되면 결과 출력 후 종료

4. 결과값이 들어갈 배열(B배열)은 0으로 초기화된 상태

 

추가로 문제에서는 언급되지 않았지만 2건 이상의 숫자가 입력되었다고 가정해야 합니다.

그렇지 않으면 '더하기'라는 목적을 수행할 수가 없게 되니까요.

 

이제 봅시다.

배열 A는 사용자로 부터 숫자를 입력받는 배열입니다.

배열 B는 입력받은 배열 A의 값들을 합산하여 저장하는 배열입니다.

3개의 수를 입력받는다고 가정하면, 

 

첫 번째 입력

- 입력값을 A(첫 번째)에 저장

 

두 번째 입력

- B에 A(첫 번째)를 저장

- 입력값을 A(두 번째)에 저장

 

세 번째 입력

- B에 A(두 번째)를 저장

- 입력값을 A(세 번째)에 저장

 

네 번째 입력

- B에 A(세 번째)를 저장

- 0을 A에 저장

 

입력 종료

 

이러한 방식입니다.

이후 진행은 알고리즘의 이해와 디버깅표를 참고해가며 파악해보세요.

 

행복한 하루되세요 :)

  • 관리자
    2019-05-23 13:23:15

    안녕하세요 길벗수험서 운영팀입니다.

     

    해당 문제는 실제 출제되었던 문제로, 245쪽의 [문제]에서 언급한 조건들을 정확히 파악해야 합니다.

     

    1. 100건 이내의 12자리 숫자

    2. 각 숫자는 배열에 분리되어 입력

    3. 배열의 첫 번째 요소(A[1])에 0이 입력되면 결과 출력 후 종료

    4. 결과값이 들어갈 배열(B배열)은 0으로 초기화된 상태

     

    추가로 문제에서는 언급되지 않았지만 2건 이상의 숫자가 입력되었다고 가정해야 합니다.

    그렇지 않으면 '더하기'라는 목적을 수행할 수가 없게 되니까요.

     

    이제 봅시다.

    배열 A는 사용자로 부터 숫자를 입력받는 배열입니다.

    배열 B는 입력받은 배열 A의 값들을 합산하여 저장하는 배열입니다.

    3개의 수를 입력받는다고 가정하면, 

     

    첫 번째 입력

    - 입력값을 A(첫 번째)에 저장

     

    두 번째 입력

    - B에 A(첫 번째)를 저장

    - 입력값을 A(두 번째)에 저장

     

    세 번째 입력

    - B에 A(두 번째)를 저장

    - 입력값을 A(세 번째)에 저장

     

    네 번째 입력

    - B에 A(세 번째)를 저장

    - 0을 A에 저장

     

    입력 종료

     

    이러한 방식입니다.

    이후 진행은 알고리즘의 이해와 디버깅표를 참고해가며 파악해보세요.

     

    행복한 하루되세요 :)

  • 관리자
    2019-05-24 09:59:12

    안녕하세요 길벗수험서 운영팀입니다.

     

    말씀하신 것과 같이 A[1] 자리에 0을 입력한 후 뒤의 자리에는 무엇을 입력하든 12자리를 입력해야 입력이 종료됩니다.

     

    000 000 000 000 을 입력한 경우나,

    011 111 111 111 을 입력한 경우 모두 A[1]은 0이므로 입력이 종료됩니다.

     

    만약 A[1]에 0이 입력되자 마자 입력 구문이 종료되는 것을 원한다면 조건문 <A[1]=0>부분을 A[i]를 입력받는 부분 바로 아래 두어야겠죠.

     

    (해당 순서도는 실제로 시험에 출제되었던 형태입니다.)

     

    행복한 하루되세요 :)

  • *
    2019-05-24 09:04:27

    설명 감사드립니다.ㅎㅎ

     

    추가로 궁금한게 있습니다

     

    배열A를 B에 추가로 더해서 두 배열의 수를 더하는것까지 이해가 되었습니다

     

    1. 그래서 더할 배열이 없을땐 0000 0000 0000 를 쳐서(첫번째숫자0) 입력을 멈추는게 맞나요?

     

    2. 그럼 만약 처음부터 0111 1111 1111 1111(첫번째숫자0)의 배열을 더하는 건 어떻게 되는건가요?

     

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.