Option Explicit
Sub main()
''''필수 변수 선언 Dim 인수1, 인수2, i, 버퍼 As Variant ''''핵심 변수 선언 Dim 지불방법, 예약수량, 예약금액, 지불금액(1000), 합계(1000), 일련번호(1000), j, Temp, Num As Variant ''''인수 처리 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " "))) ''''입력 파일 처리 Open "c:\c_it\data\abc04.txt" For Input As #1 For i = 1 To 인수2 Line Input #1, 버퍼 If i >= 인수1 Then ''''변수 저장 지불방법 = Trim(Mid(버퍼, 58, 3)) 예약수량 = Val(Mid(버퍼, 18, 5)) 예약금액 = Val(Mid(버퍼, 23, 10)) ''''배열 변수 구하기 If 지불방법 = "AA" Or 지불방법 = "BB" Then Num = Num + 1 지불금액(Num) = Val(Mid(버퍼, 48, 10)) 합계(Num) = 예약수량 * 예약금액 일련번호(Num) = Trim(Mid(버퍼, 1, 7)) End If End If Next i ''''정렬(지불금액 오름차순 or (지불금액 같음 and 일련번호 오름차순)) For i = 1 To Num For j = i To Num If 지불금액(i) > 지불금액(j) Or _ (지불금액(i) = 지불금액(j) And 일련번호(i) > 일련번호(j)) Then Temp = 지불금액(i) 지불금액(i) = 지불금액(j) 지불금액(j) = Temp Temp = 합계(i) 합계(i) = 합계(j) 합계(j) = Temp Temp = 일련번호(i) 일련번호(i) = 일련번호(j) 일련번호(j) = Temp End If Next j Next i Close #1 ''''출력 파일 처리 Open "c:\c_it\data\ans1.txt" For Output As #2 Print #2, 인수1, 인수2, 합계(5) Close #2
End Sub
|