프날 오토핫키 강좌  v2

⚠ 이 강좌는 오토핫키 v2를 다룹니다

지금 보시는 강좌는 과거 오랜 시간동안 알려진 오토핫키(v1.1)의 차세대 버전인 오토핫키 v2를 다루고 있습니다.
만약 구버전인 '오토핫키 v1.1'의 강좌를 찾으신다면 프날 오토핫키 강좌(https://pnal.kr)를 봐주시면 되지만, 새로 오토핫키를 배우신다면 v2 버전을 배우시는 것을 강력히 추천드립니다.

86. 프로그래밍 문제 (13)


지난 강까지 배운 문자열 파싱을 연습해봅시다.

⚠ 제공되는 정답은 신중히 열어보세요

정답을 쉽게 확인할수록 문제 해결 능력은 천천히 오릅니다.
반드시 오래 생각한 후, 강좌를 아무리 복습해도 답을 모르겠을 때 정답을 확인해주세요.

프로그래밍 문제

문제 1. 아래와 같은 프로그램을 작성하세요.

[동작]
1. 변수에 담긴 문자열의 공백을 제외한 글자 수를 출력한 후 프로그램을 종료한다.

[예시]
문자열: 그대만큼 사랑스러운 사람을 본 일이 없다
출력: 17

힌트 펼치기/접기 - "공백을 제거한 글자 수 세기"을 두 동작으로 나누어 구성해보자.
정답 펼치기/접기
문제 1 정답
86-1.ahk (0.11KB)

 


문제 2. 아래와 같은 프로그램을 작성하세요.

[동작]
1. -:, 공백 을 구분자로 변수의 문자열을 분리하여 각 배열에 담아 출력한 후 프로그램을 종료한다.

[조건]
1. StrSplit은 한 번만 사용할 것.
2. 구분된 각 부분은 배열에 담겨있어야 한다.
3. 출력 양식은 자유롭게 한다. (분리된 것만 눈으로 보이면 된다.)

[예시]
문자열: 2024-01-01 12:20:30
출력: [1]2024 [2]01 [3]01 [4]12 [5]20 [6]30

힌트 펼치기/접기 - 문제 1과 근본적으로 다르지 않다.
정답 펼치기/접기
문제 2 정답
86-2.ahk (0.41KB)

 


문제 3. 아래와 같은 프로그램을 작성하세요.

[동작]
1. 여러줄 입력이 가능한 입력 상자(Edit 컨트롤) 하나와 버튼(Button 컨트롤) 하나가 있는 GUI 창을 만든다.
Edit 컨트롤에 충분한 높이(h)를 지정하면 여러 줄 입력이 가능하도록 만들어진다.
2. 버튼을 누르면 입력 상자에 입력된 글의 각 줄이 총 8글자인지 확인한다.
3. 각 줄이 모두 8글자이면 'OK'를, 그렇지 않으면 'NO'를 출력.

[조건]
1. 입력에 제한이 없는 상황에서 이를 배열에 담으면 메모리를 과다하게 사용할 수 있으므로, 입력 문자열을 배열에 담지 않는다.
2. 창의 모양은 자유롭게 한다.
3. 상세한 동작은 아래의 동영상을 참고한다.

[동작 동영상]

비디오 1. '문제 3'의 목표
힌트 펼치기/접기 1. '조건 1'에 의해 StrSplit을 사용하면 안된다.
2. 입력 문자열을 Loop Parse을 이용하여 순회한다.
정답 펼치기/접기
문제 3 정답
86-3.ahk (0.40KB)

 


정답은 예시입니다.

조건을 지켜서 프로그래밍 했다고 가정할 때, 제공 정답과 동일한 동작을 한다면 잘 하신 것입니다.
내려받은 정답 코드가 자신의 코드와 다르다고해서 오답인 것은 아닙니다!

질문하러 가기