답이 엉뚱하게 나와요..
뭐가 잘못된건가요..
1번문제 Sub main()
''필수변수선언 Dim 인수1, 인수2, i, 버퍼 As Variant ''핵심변수선언 Dim 담당코드, 영어점수, 수학점수, 학번(1000), 합계(1000), j, temp, num As Variant
''인수저장 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " ")))
''입력파일처리 Open "c:\c_it\data\abc1115.txt" For Input As #1 For i = 1 To 인수2 Line Input #1, 버퍼 If i >= 인수1 Then
''변수저장 담당코드 = Trim(Mid(버퍼, 29, 1)) 영어점수 = Val(Mid(버퍼, 14, 3)) 수학점수 = Val(Mid(버퍼, 17, 3))
If 담당코드 = "A" Or 담당코드 = "C" Then num = num + 1 합계(num) = 영어점수 + 수학점수 학번(num) = Val(Mid(버퍼, 1, 6)) End If End If
Next i
''자료정렬
For i = 1 To num For j = 1 To num
If 합계(i) < 합계(j) Or (합계(i) = 합계(j) And 학번(i) > 학번(j)) Then
temp = 합계(i) 합계(i) = 합계(j) 합계(j) = temp
temp = 학번(i) 학번(i) = 학번(j) 학번(j) = temp
End If Next j Next i ''출력자료입력 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, i, 버퍼 As Variant ''핵심변수선언 Dim 담당코드, 영어점수, 수학점수, 최대값, 합계 As Variant
''인수저장 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " ")))
''입력파일처리 Open "c:\c_it\data\abc1115.txt" For Input As #1 ''최대값 초기화 최대값 = 0
For i = 1 To 인수2 Line Input #1, 버퍼 If i >= 인수1 Then
''변수저장 담당코드 = Trim(Mid(버퍼, 29, 1)) 영어점수 = Val(Mid(버퍼, 14, 3)) 수학점수 = Val(Mid(버퍼, 17, 3))
If 담당코드 = "A" Or 담당코드 = "C" And 최대값 < 영어점수 + 수학점수 Then
최대값 = 영어점수 + 수학점수 End If
End If
Next i
Close #1
''출력자료입력 Open "c:\c_it\data\ans2.txt" For Output As #2 Print #2, 인수1, 인수2, 최대값 Close #2
End Sub
|