여러분 안녕!!
JoyCodingLab.(조이코딩연구소)
장샘 입니다.!!
오늘도 어김없이 COS 1급 예제문제 5번을 풀어보도록 하지요.
코딩스페셜리스트 자격증을 위하여 한걸음 더 다가가 봅시다!
자 5번 문제 풀이 입니다.
지문을 보니 계산을 하는 프로그램 이네요.
네자리 숫자의 각 자리의 숫자를 더한다!
흠 어떻게 해야 될지 고민이 되겠네요.
계산 후에는 결과 값의 마지막! 숫자!!를 말합니다.
문제와 똑같이 코딩을 해서 결과 값이
위와 같이 2라고 나오면 정답이네요~
자 변수에는
N : 자릿수를 판단하기 위한 변수와
합 : 숫자들을 더한 합 변수가 있네요.
코딩 스프라이트에는 고양이 하나이고
문제를 보니 보기 블럭은 없어 보입니다.
대신 추가 블럭 형태로 코딩을 해야 되는거 같네요.
실제 문제를 한번 볼까요?
"계산"이라는 추가블럭이 정의되어 있고
그안에 우리가 코딩을 하면 되겠네요.
위 문제에서 중요하게 봐야될 부분이 있었죠!
뭐죠?
바로 "유의 사항" 이었습니다.
주어진 블럭이 아닌 자유롭게 코딩을 해라~~
제약없이 하는 것이기 때문에
결과만 같으면 됩니다.
자 계산 추가 블럭에도 매게변수가 있네요.
num이라고 되어있네요.
계산 7113 이라는 블럭의 "7113" 값이
정의하기 계산 num<--여기로 들어온다는 뜻이에요.
자 그럼 뭐 부터 해야 될까요?
문제에 보면 만약이라는 말이 보이셨나요?
오류! 말하기에 대한 정의가 있다? 없다?
전혀 없습니다.
문제의 맥락과 흐름을 이해하셔야 알 수 있는 문제네요.
뭐가 아니면 오류!말하기를 할까요?
Hint라고는 매게변수인 num밖에 없습니다.
즉, 우리는 자릿수에 대한 문제였으니
자릿수가 4개가 아니면 오류를 말하기! 라고
유추해 볼 수 있겠네요.
자 그럼 자릿수에 대한 판단은 어떻게 해야 될까요?
자 매게변수인 num의 길이가 4 자릿수 인지 구분하기 위해서
위와 같은 스프라이트를 가지고 와서 조합합니다.
위 부분의 스크립트는 연산에 존재 합니다~!
자 이렇게 되면 추가블럭으로 들어오는
"7113"(num)의 길이가 4면 더하기 진행
아니면 오류! 말하기 라고 구분이 되겠네요.
자 위와 같이 일단 코딩을 해봅니다.
그 다음으로 실제 이번 문제의 핵심
4자릿수의 숫자들을 각각 더해줘야 되는데
어떻게 해야 될까?
자 저는 기본적으로 뭔가 반복적으로 해야 된다고 생각하면
반복하기 스크립트 블럭을 생각합니다.
자릿수가 4자리니 4번 반복을 사용할 수 도 있고요
또는
num의 길이(자릿수 =4)번 반복하기를 사용해도 됩니다.
저는 2번 케이스로 진행을 하도록 하죠.
자 여기까지 잘 따라 오셨나요?
그러면 매게변수인 num의 자리수를 변경하면서
더하도록 합시다.
어떻게??
일단 각 글자의 자릿수를 알기 위해서
x 번째 글자( ) 블럭을 이용합니다.
문제에서 변수N 기억하시죠?
자릿수를 판단하는 변수.
이것을 이용해야죠~
N번째는 반복이 4번 돌면서 자릿수 1,2,3,4 증가 될거에요.
num의 자리수를 하나씩 가지고 오는거죠.
가져와서 각각 더해줘야죠~~
어떻게??!!!
num의 N번째 글자를 더해서 합에 넣어 줘라!
자 조금더 쉽게 풀이를 하자면..
num = "7113"
N이 1일 때는 7 입니다.
N이 2일 때는 1 입니다.
N이 3일 때는 1 입니다.
N이 4일 때는 3 입니다.
자리수에 대한 개념이 정확히 파악하세요!!
첫번째 자리수는 글자의 첫 부분이 입니다.
혼동하지말기!!!!!!!!!!!!!!
자 이제 다 끝났네요^^!!!!
.
.
.
.
라고 생각하셨으면 조금더 공부하십니다 -0-!!!
뭐가 빠졌잖아요? 뭐죠?
맞습니다. N번째에 대해서 반복문이 구동될 때
N값도 하나씩 증가를 시켜줘야 겠죠?
그래서 N을 1만큼 바꾸기를 시행해 줍니다.
자 이제 정말 다 했습니다.
구동을 시켜 보도록 하죠.
전체의 합은 12이고
합의 마지막 숫자를 말하는 거였으니
2라고 정답이 나왔네요.
자 추가로~!!!
기존 YBM IT에 올라온 정답하고 다르게 버전으로 올려 봅니다.
반복문을 이용하는 방법만 다르고
나머지는 같습니다.
구현은 블럭사용은 자유였으니
각자 스스로 한번씩 다른 방법으로 해보세요~!!!
그럼 이만
이라고 하기에 수업을 들으시는 분들중에
오류의 케이스를 보너스로 보여 드립니다.!!
자 전체 합을 구할 때 위와 같이 구하면 되요? 안되요?
물론 되요!!!! 그러나~~!!!!
문제 중에 자리수에 대한 변수 N을 설명을 했었으니
N으로 자리수를 바꿔주는게
제대로된 정답이라고 보여집니다.
COS 시험은 채점을 컴퓨터가 판단하기 때문에
부분점수를 줄 수 있을지 모르나
부분 점수보다는 각 문제마다 다 맞으면
좋은거닌깐^^!!
자 어떠셨나요?
문제 하나에서도 배울게 많습니다.
질문은 뭐다?
합격을 위한 지름길이다.
다들 화이팅 하고~~!!
아래 하트를 꾹 눌러줘야
힘이 나겠죠?ㅋㅋㅋㅋㅋㅋㅋ
그럼 정말 조이코딩연구소
장샘은 이만 물러갑니다.
휘리리릭!
뿅!!
'코딩 교육 자격증 & 코딩 강사 자격증 & 코딩 자격증 정보 > 2. COS 코딩스페셜리스트' 카테고리의 다른 글
6. COS 1급 예제 문제 풀이_코딩 스페셜리스트(6/10) (0) | 2017.07.01 |
---|---|
7. COS 1급 예제 문제 풀이_코딩 스페셜리스트(7/10) (0) | 2017.06.30 |
4. COS 1급 예제 문제 풀이_코딩 스페셜리스트(4/10) (2) | 2017.06.28 |
3. COS 1급 예제 문제 풀이_코딩 스페셜리스트(3/10) (2) | 2017.06.27 |
2. COS 1급 예제 문제 풀이_코딩 스페셜리스트(2/10) (0) | 2017.06.25 |