⚠ 이 강좌는 오토핫키 v2를 다룹니다
지금 보시는 강좌는 과거 오랜 시간동안 알려진 오토핫키(v1.1)의 차세대 버전인 오토핫키 v2를 다루고 있습니다.
만약 구버전인 '오토핫키 v1.1'의 강좌를 찾으신다면 프날 오토핫키 강좌(https://pnal.kr)를 봐주시면 되지만,
새로 오토핫키를 배우신다면 v2 버전을 배우시는 것을 강력히 추천드립니다.
56. 프로그래밍 문제 (8)
마지막 수정일: 2023-12-22
함수를 이해했는지 확인하는 프로그래밍 문제입니다.
⚠ 제공되는 정답은 신중히 열어보세요
정답을 쉽게 확인할수록 문제 해결 능력은 천천히 오릅니다.
반드시 오래 생각한 후, 강좌를 아무리 복습해도 답을 모르겠을 때 정답을 확인해주세요.
프로그래밍 문제
문제 1. 다음 중 함수에 관한 설명으로 옳지 않은 것은?
ㄱ. 정의한 함수를 호출할 수 있다.
ㄴ. 함수는 여러 매개변수를 가질 수 있다.
ㄷ. 함수는 여러 반환 값을 가질 수 있다.
ㄹ. 함수의 반환값이나 매개변수가 필요 없을 경우, 모두 생략할 수 있다.
정답 펼치기/접기
답: ㄷ- 함수는 하나의 반환 값만 가질 수 있다.
문제 2. 다음 중 참조에 관한 설명으로 옳지 않은 것은?
ㄱ. 참조는 어떤 변수의 또다른 별칭과도 같다.
ㄴ. B가 A의 참조일때, B를 사용하여 A값을 바로 출력할 순 있지만, 새 값을 대입하려면 B를 역참조할 필요가 있다.
ㄷ. 참조를 이용하면 인수로서 전달된 변수의 값을 바꿀 수 있다.
ㄹ. A를 참조하는 변수 B가 있을 때, B를 역참조하면 A와 본질적으로 같다.
정답 펼치기/접기
답: ㄴ- 출력이든 대입이든, 참조된 변수에 접근하려면 역참조가 필요하다.
문제 3. 아래와 같은 프로그램을 작성하세요.
누른 핫키 기준으로 구구단을 출력하는 프로그램
[동작]
1. 1~9를 누르면 각각 1단부터 9단까지의 구구단을 출력한다.
2. ESC를 누르면 스크립트를 종료한다.
[조건]
1. 핫키 블록 안의 내용은 한 줄만 쓸 것.
2. 단을 입력받으면 구구단 문자열을 반환해주는GetGugu
함수를 만들어 사용할 것.
3. 함수 호출문은 한 번만 쓸 것.
힌트 펼치기/접기
- 누른 핫키가 담긴 내장 변수가 있었습니다. 지금까지 문제 풀면서도 몇 번 썼었습니다.- 핫키 블록 안의 한 줄은 당연히 함수 호출문일 것입니다.
정답 펼치기/접기
문제 4. 아래와 같이 제공된 프로그램을 수정하세요.
두 변수의 값을 바꿔주는 프로그램
[동작]
1. 두 변수의 값을 바꾼다.
2. 바꾼 변수의 값을 출력한다.
[답안 작성]
1. 별개로 제공하는 아래의 '제공 스크립트'를 수정하여 작성한다.
[조건]
1. 표시된 부분 이외의 다른 부분은 수정하지 말 것.
2. 아래의 '출력 결과'를 참고할 것.
1 a := 10
2 b := 20
3 Swap() ;함수의 호출부를 완성하세요.
4 MsgBox("a의 값: " a ", b의 값: " b)
5
6 Swap() ;함수의 매개변수를 완성하세요.
7 {
8 ;함수의 본문을 완성하세요.
9 }
힌트 펼치기/접기
- 참조에 의한 호출을 이용하여 함수 안에서 a와 b의 값을 교환할 것- 각각 오렌지 주스, 포도 주스가 담긴 두 컵의 내용물을 서로 교환하려면 일상 생활에선 어떻게 하는가?
정답 펼치기/접기
- 또다른 컵에 오렌지 주스를 임시로 비워둔다.
- 비워진 컵으로 포도 주스를 붓는다.
- 포도 주스가 있던 컵으로 아까 임시로 빼둔 오렌지 주스를 넣는다.
정답은 예시입니다.
조건을 지켜서 프로그래밍 했다고 가정할 때, 제공 정답과 동일한 동작을 한다면 잘 하신 것입니다.
내려받은 정답 코드가 자신의 코드와 다르다고해서 오답인 것은 아닙니다!