프날 오토핫키 강좌
누르면 강좌 리스트가 나와요
프날 오토핫키 강좌

⚠ 이 강좌는 오토핫키 v1을 다룹니다

지금 보시는 강좌는 구버전 오토핫키(v1.1)를 다루고 있습니다. 따라서 본 강좌의 내용은 현재 최신 오토핫키 버전 (v2.0)과 호환되지 않습니다. 구버전의 정보가 필요한 것이 아니라면, 가능한 한 새로운 사이트에 작성한 v2 강좌(https://ahkv2.pnal.dev)를 봐주시길 바랍니다.

[프날 오토핫키] 41. 프로그래밍 문제 (9)

이번 문제는 한 문제이며, 정답은 가장 아래쪽에 스크립트 파일로 제공합니다. 작성하신 스크립트와 정답이 달라도 정상적으로 작동만 한다면 제대로 작성하신겁니다.

 


문제 1. 아래의 글은 미국의 권주가(勸酒歌)를 개사한 글이다. 조건과 동작에 맞게, 메모장에 똑같이 입력하시오

5병의 맥주가 벽장에 있네, 5병의 맥주라네
하나를 내려서 넘겼네, 4병의 맥주가 벽장에 있네

4병의 맥주가 벽장에 있네, 4병의 맥주라네
하나를 내려서 넘겼네, 3병의 맥주가 벽장에 있네

3병의 맥주가 벽장에 있네, 3병의 맥주라네
하나를 내려서 넘겼네, 2병의 맥주가 벽장에 있네

2병의 맥주가 벽장에 있네, 2병의 맥주라네
하나를 내려서 넘겼네, 1병의 맥주가 벽장에 있네

1병의 맥주가 벽장에 있네, 1병의 맥주라네
하나를 내려서 넘겼네, 0병의 맥주가 벽장에 있네

더 이상 벽장에 맥주가 없네, 맥주는 더 이상 없다네
가게로 가서 더 사왔네, 99병의 맥주가 벽장에 있네

 

[조건]

  • 비활성으로 입력할 것
  • 반복문을 적절히 사용하여 풀 것
  • 내장 변수를 사용하지 말고, 한 가지 변수만 사용할 것
  • 코드 제한: 15줄

 

[유의사항]

대부분 Windows 버전의 경우, 글자가 입력된다면 메모장 타이틀에 별 기호(*)가 추가됩니다.

예를 들어서, 초기 타이틀이 " 제목 없음 - 메모장" 이었다면, ControlSend로 입력한 뒤에는 " *제목 없음 - 메모장 "이 타이틀이 됩니다. 이는 문서가 아직 저장되지 않았다는 뜻입니다.

 

이를 해결하기 위해 스크립트 최상단에 SetTitleMatchMode, 2를 써주세요.

이렇게 써주면 WinTitle 매개변수에 쓴 값이 일부일때도 그 타이틀을 찾습니다. 예를 들어서, ABC123이라는 타이틀을 가진 창이 있을 때, ABC, 123, BC12 등 포함되는 단어만 WinTitle 매개변수에 적어도 ABC123이라는 창과 매치됩니다. 따라서 메모장의 타이틀이 "Text" 든 "*Text"든 상관없이 ControlSend를 사용할 수 있습니다.

 

사족으로, TitleMatchMode가 1이면 앞부분이 맞았을 때 매치되며(예를 들어서, ABC123이라는 창은 ABC, ABC1이라는 WinTitle 매개변수에 매치되지만 123에는 매치되지 않음)

TitleMatchMode가 3이면 WinTitle 매개변수와 실제 타이틀명이 정확해야 매치됩니다.

 

따라서, 스크립트를 시작하기 전에 SetTitleMatchMode, 2를 적고 코딩해주세요.

 

 

 

[결과]


문제 1 정답.ahk
0.00MB


| 41. 프로그래밍 문제 (9) |