제가 소스코딩을 쌤하고 좀 다르게 했거든요~~그래도 확인하니까 답이 나와서요
소스코딩 이렇게 해도 괜찮은지..아님 쌤의 방법대로 다시 외워야 하는지 갈켜주시믄 감사하겠습니다.
Option Explicit
Sub main() ''필수변수선언 Dim 인수1, 인수2, 버퍼, i As Variant ''핵심변수선언 Dim 캐릭터타입, 캐릭터점수, 아이템코드, 체력증가, 지력증가, 마법력증가, 보너스머니, 경험치, 사이버머니, num, 평균, 체력, 지력, 마법력, 합계 As Variant ''인수처리 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " "))) ''입력파일처리 Open "c:\c_it\data\abc0012.txt" For Input As #1
For i = 1 To 인수2 Line Input #1, 버퍼 If i >= 인수1 Then ''변수저장 아이템코드 = Trim(Mid(버퍼, 30, 1)) 경험치 = Val(Mid(버퍼, 15, 3)) 체력 = Val(Mid(버퍼, 18, 3)) 지력 = Val(Mid(버퍼, 21, 3)) 마법력 = Val(Mid(버퍼, 24, 3)) 캐릭터타입 = Trim(Mid(버퍼, 29, 1)) ''표처리 Select Case 아이템코드 Case "A" 체력증가 = 10 지력증가 = 0 마법력증가 = 0 Case "B" 체력증가 = 0 지력증가 = 10 마법력증가 = 0 Case "C" 체력증가 = 0 지력증가 = 0 마법력증가 = 10 Case "D" 체력증가 = 5 지력증가 = 5 마법력증가 = 5 End Select If 캐릭터타입 = "W" Then num = num + 1 캐릭터점수 = 경험치 + (체력 + 체력증가) * 2 + (지력 + 지력증가) * 2 + (마법력 + 마법력증가) * 3 합계 = 합계 + 캐릭터점수 End If End If Next i
''평균 If num = 0 Then 평균 = 0 Else: 평균 = Round(합계 / num) End If Close #1 ''출력파일처리 Open "c:\c_it\data\ans3.txt" For Output As #2 Print #2, 인수1, 인수2, 평균 Close #2
End Sub |