Option Explicit
Sub main() Dim 인수1, 인수2, 버퍼, k As Variant Dim 예약금액, 예약수량, 고객구분, 합계(1000), p, temp, num 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 k = 1 To 인수2 Line Input #1, 버퍼 If k >= 인수1 Then
예약금액 = Val(Mid(버퍼, 23, 10)) 예약수량 = Val(Mid(버퍼, 18, 5)) 고객구분 = Trim(Mid(버퍼, 33, 1))
If 고객구분 <> "0" And 고객구분 = "1" Then num = num + 1 합계(num) = 예약수량 * 예약금액
End If End If
Next k
For k = 1 To num For p = k To num If 합계(k) > 합계(p) Then temp = 합계(k) 합계(k) = 합계(p) 합계(p) = temp
End If Next p Next k Close #1 Open "c:\c_it\data\ans2.txt" For Output As #2 Print #2, 인수1, 인수2, 합계(1) Close #2 End Sub
2,3 번 두개나 틀려서 불합격입니다ㅜㅜ 낼 셤인데.. 고객구분 = Trim(Mid(버퍼, 33, 1)) 이걸 33,5로 적어야 맞는 거예요?
그리고 3번..
Option Explicit
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\abc06.txt" For Input As #1 For k = 1 To 인수2 Line Input #1, 버퍼 If k >= 인수1 Then
특검여부 = Trim(Mid(버퍼, 71, 1)) 예약수량 = Val(Mid(버퍼, 18, 5)) 운송거리 = Val(Mid(버퍼, 103, 10))
Select Case 특검여부 Case "A" 운송비용 = 운송거리 * 10000 + 50000 Case "B" 운송비용 = 운송거리 * 8000 + 30000 Case Else 운송비용 = 운송거리 * 7000 + 20000 End Select
If 예약수량 >= 80 Then 합계 = 합계 + 운송비용
End If End If
Next k Close #1 Open "c:\c_it\data\ans3.txt" For Output As #2 Print #2, 인수1, 인수2, 합계
Close #2
End Sub
|