책 내용 질문하기
공식 무슨소린지 모르겠어요.
도서
[2014] 컴퓨터활용능력 2급 실기(엑셀 2007 사용자용)
페이지
284
조회수
81
작성일
2014-03-22
작성자
첨부파일

284페이지 1번문제

정답및해설 289페이지

choose(int(d3/10)+1,"F","F","F","D","D","C","C","B","B","A","A")

이건데 여기서 왜 D3/10을하고 또 +1을하고 뒤에 F는왜 3번들어가고 나머지D,C,B,A는 2번씩 들어가는지

이해가 안가요...

답변
2014-03-24 16:38:59

수식을 보니, 아마도 시험점수를 등급으로 변경하는 문제가 아닌가 싶습니다...

문제는 아마도.. 0~29점 까지 F, 30~49 까지 D, 50~69까지 C, 70~89까지 B, 90~100까지 A일꺼 같네요

int(값)

- 값에서 정수부만 출력해 줍니다.

- ex : 수식 : int(3.51) 결과 : 3

choose(순번(정수), 값1,값2,값3....값n)

- 순번이 1이면 첫번째에 있는 값1을, 4이면 4번째에 있는 값4를 출력해 줍니다.

- ex : 수식 choose(3, "가", "나", "다", "라") 결과 : 다

시험점수의 구간은 0~100까지 입니다. 이점수를 10으로 나누고, int함수로 정수부만 빼면

0~10까지 나올수 있는 경우의 수가 생깁니다.

근데 choose 함수에서 순번에 0이 들어가면 에러가 생깁니다(#VALUE! 오류)

그래서 0일경우를 생각하여, 모든값에 1을 더해줘서 0일때 첫번째값을, 1일때 두번째 값을 지정하게 하는것입니다.

ex)

점수가 8점일때... 8점을 10으로 나누면 0.8

여기에 int 함수를 적용하면 int(0.8) 은 0

여기에 1을 더해주면.. 0 + 1 = 1

choose(1, "F","F","F","D","D","C","C","B","B","A","A")

에서 순번이 1이니깐 첫번째 값이 F를 출력하게 됩니다.

점수가 67일때.. 67을 10으로 나누면 6.7

여기에 int함수를 적용하면 int(6.7) 은 6

여기에 1을 더해주면 6+1=7

choose(7, "F","F","F","D","D","C","C","B","B","A","A")

에서 순번이 7이니깐 일곱번째 값인 C를 출력하게 됩니다.

  • *
    2014-03-24 16:38:59

    수식을 보니, 아마도 시험점수를 등급으로 변경하는 문제가 아닌가 싶습니다...

    문제는 아마도.. 0~29점 까지 F, 30~49 까지 D, 50~69까지 C, 70~89까지 B, 90~100까지 A일꺼 같네요

    int(값)

    - 값에서 정수부만 출력해 줍니다.

    - ex : 수식 : int(3.51) 결과 : 3

    choose(순번(정수), 값1,값2,값3....값n)

    - 순번이 1이면 첫번째에 있는 값1을, 4이면 4번째에 있는 값4를 출력해 줍니다.

    - ex : 수식 choose(3, "가", "나", "다", "라") 결과 : 다

    시험점수의 구간은 0~100까지 입니다. 이점수를 10으로 나누고, int함수로 정수부만 빼면

    0~10까지 나올수 있는 경우의 수가 생깁니다.

    근데 choose 함수에서 순번에 0이 들어가면 에러가 생깁니다(#VALUE! 오류)

    그래서 0일경우를 생각하여, 모든값에 1을 더해줘서 0일때 첫번째값을, 1일때 두번째 값을 지정하게 하는것입니다.

    ex)

    점수가 8점일때... 8점을 10으로 나누면 0.8

    여기에 int 함수를 적용하면 int(0.8) 은 0

    여기에 1을 더해주면.. 0 + 1 = 1

    choose(1, "F","F","F","D","D","C","C","B","B","A","A")

    에서 순번이 1이니깐 첫번째 값이 F를 출력하게 됩니다.

    점수가 67일때.. 67을 10으로 나누면 6.7

    여기에 int함수를 적용하면 int(6.7) 은 6

    여기에 1을 더해주면 6+1=7

    choose(7, "F","F","F","D","D","C","C","B","B","A","A")

    에서 순번이 7이니깐 일곱번째 값인 C를 출력하게 됩니다.

  • *
    2014-03-25 07:04:03

    choose 함수 사용법을 보시면(53p) =choose(인수,첫번째,두번째,...)

    인수가 1이면 첫번째를, 2이면 두번째를,...

    한마디로 요일 번호가 1이면 "일",2이면 "월",3이면 "화",4이면 "수",.....

    = choose(c3,"일","월","화","수","목","금","토") 가 되는 것이지요.

    문제에서

    90이상이면 "A",70이상이면 "B", 50이상이면 "C",30이상이면 "D", 30미만이면 "F" 를 평점에 표시하라고 했기 때문입니다.

    30미만이므로 0~29까지 입니다. 0~1까지 10으로 나누면 0이 나오기 때문에 +1 을 해서 1로 만들어주고

    10~19까지 10으로 나누면 1 거기에 +1을 하면 2,

    20~29까지 10으로 나누면 2 거기에 +1을 하면 3,

    이 되므로 1,2,3 이 0~29까지의 값이됩니다. 그래서 choose의 인수가 1,2,3 일때 값을 반환하기 위해서

    choose 인수의 첫번째,두번째, 세번째에 "F" 가 들어가는 것이죠.

    그리고 +1 을 하는 이유는 0~9값을 10으로 나누면 0이 나오기 때문에 0값은 choose 함수에서 사용할 수 없으므로 +1을 하여 1의 값을 만들어 주게 되는 것이죠. 그래서 1이 나오면 "F" 를 반영할 수 있도록

    choose(int(d3/10)+1,"F",.....) 로 사용하는 것입니다.


    30미만인 것 즉 1,2,3 이라는 인수가 나온 것은 F가 되어야 하므로

    choose(int(d3/10)+1,"F","F","F"...

    로 사용하는 것이죠.

    책에 설명되어 있듯이 81을 10으로 나누면 8이되고 거기에 +1을 하게되면 9가 됩니다.

    80이상이면 "B" 가 되어야 하기때문에 9는 "B"로 맞게 됩니다.

    좋은 하루 되세요.

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