아래 내용은 작성하신 소스입니다.
1번
=> 초급인데 중급처럼 풀이를 하셨네요..자료실에 소스와 비교해 보세요.
Sub main() Dim 인수1, 인수2, K, 버퍼 As Variant Dim 제조등급, 매출액, 판매량, 제조포인트, 값(1000), 제조번호(1000), P, Num, Temp As Variant 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " "))) Open "C:\C_iT\data\abc05.txt" For Input As #1 For K = 1 To 인수2 Line Input #1, 버퍼 If K >= 1 Then ====> If K >= 인수1 Then 제조등급 = Trim(Mid(버퍼, 29, 1)) 매출액 = Val(Mid(버퍼, 26, 3)) 판매량 = Val(Mid(버퍼, 15, 3)) 제조포인트 = Val(Mid(버퍼, 20, 3)) If 제조등급 = "C" And 매출액 >= 80 Then Num = Num + 1 값(Num) = 판매량 + 제조포인트 제조번호(Num) = Val(Mid(버퍼, 1, 6)) End If End If Next K For K = 1 To Num For P = K To Num If 값(K) < 값(P) Or 값(K) = 값(P) And 제조번호(K) > 제조번호(P) Then Temp = 값(K) 값(K) = 값(P) 값(P) = Temp End If Next P Next K Close #1 Open "c:\c_it\data\ans1.txt" For Output As #2 Print #2, 인수1, 인수2, 값(5) Close #2 End Sub
2번
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\abc05.txt" For Input As #1 최대값 = 0 For K = 1 To 인수2 Line Input #1, 버퍼 If K >= 1 Then ====> If K >= 인수1 Then 매출액 = Val(Mid(버퍼, 26, 3)) 제조포인트 = Val(Mid(버퍼, 20, 3)) If 제조포인트 >= 30 Then If 최대값 < 매출액 * 제조포인트 Then 최대값 = 매출액 * 제조포인트 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
|