Option Explicit Sub main() ''필수변수선언 Dim 인수1, 인수2, i, 버퍼 As Variant
''핵심변수선언 Dim 예약수량, 예약금액, 지불금액(1000), 예약일자(1000), 등록번호(1000), Num, Temp, j As Variant
''인수처리 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " ")))
''입려파일처리 Open "c:/c_it/data/abc06.txt" For Input As #1 For i = 1 To 인수2 Line Input #1, 버퍼 If i >= 인수1 Then ''변수저장 예약수량 = Val(Mid(버퍼, 18, 5)) 예약금액 = Val(Mid(버퍼, 23, 10))
''배열변수구하기 If 예약수량 * 예약금액 >= 700000 Then Num = Num + 1 지불금액(Num) = Val(Mid(48, 10)) 예약일자(Num) = Trim(Mid(버퍼, 8, 10)) 등록번호(Num) = Trim(Mid(버퍼, 1, 7)) End If End If Next i ''지불금액에따라오름차순(동일값발생시등록번호오름차순) 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, 예약일자(Num) Close #2
''출력파일처리 End Sub |