고급문제는...정말...복잡하죠.. 한번은 더 생각해야 되는게 고급문제인것 같아요... 고급문제는...이제 외우는 단계를 넘어서...문제를 파악해서 이해할수 있는 능력이 필요한것 같아요.. 저도..고급문제 오늘 시작했는데 ㅎㅎ 머리가 복잡하더라구요.. 그리고 변수저장에서 도착지 코드를 쓰지 않는 이유는... 별다른게 아니구요.... 어차피....최소값 구할때....도착지 코드를...직접 추출할수 있게 코딩하잖아요.. 그래서..굳이..변수저장에..쓰지 않는거에요.. 변수저장에..도착지 코드를 코딩해도 틀리지 않아요.. 변수저장에...도착지 코드를 써도 맞구요..안 써도 맞아요 ^-^ 자신감 가지시구요.... 합격기원해요 ^-^
========================================================================== 여러분은 고급문제 어떻게 공부하시나요.. 일정한 규칙이 없는것 같아서 외우기도 쉽지않네요... 이문제좀 봐주세요... ( 도착지코드를 왜 변수저장에 쓰지 않는것인지...알수가 없네... 그냥 외울까요?^^ 만약 시험볼때 고급이 나오면 3,4번 부터 풀어야 겠어요^^ ... 어느정도 코딩은 하겠는데.. 아직 자신감이 생기지 않네요...휴~)
Sub main()
>>
''''''''필수 변수 선언 Dim 인수1, 인수2, K, 버퍼 As Variant ''''''''핵심 변수 선언 Dim 승객만족도, 좌석코드, 월이용횟수, 열차요금, 도착지코드, 최소값, 고객번호, 최대고객번호 As Variant ''''''''인수 처리 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " "))) ''''''''입력 파일 처리 Open "c:\c_it\data\abc0105.txt" For Input As #1 ''''''''최소값 초기화 최소값 = 999999999 최대고객번호 = 0 For K = 1 To 인수2 Line Input #1, 버퍼 If K >= 인수1 Then ''''''''변수 저장 승객만족도 = Val(Mid(버퍼, 16, 2)) 좌석코드 = Trim(Mid(버퍼, 8, 2)) 월이용횟수 = Val(Mid(버퍼, 32, 2)) 열차요금 = Val(Mid(버퍼, 10, 6)) 고객번호 = Val(Mid(버퍼, 1, 5)) ''''''''최대고객번호의 도착지코드 구하기 If (승객만족도 Mod 2) = 0 And 좌석코드 = "HE" Then If 최소값 > 월이용횟수 + (열차요금 * 0.4) Or _ (최소값 = 월이용횟수 + (열차요금 * 0.4) And 최대고객번호 < 고객번호) Then 최소값 = 월이용횟수 + (열차요금 * 0.4) 최대고객번호 = 고객번호 도착지코드 = Trim(Mid(버퍼, 22, 2)) End If End If End If Next K Close #1 ''''''''출력 파일 처리 Open "c:\c_it\data\ans2.txt" For Output As #2 Print #2, 인수1, 인수2, 도착지코드 Close #2 End Sub |