정렬되는 대상과 출력되는 대상이 같은 초급유형 정렬입니다.
Option Explicit
Sub main()
''필수변수선언
Dim 인수1, 인수2, 버퍼, i As Variant
''핵심변수선언
Dim 취향, 품목코드, 대여금액, 대여횟수, 연체횟수, 합계(1000), 결과값, j, Num, Temp As Variant
''인수처리
인수1 = Val(Left(Command, InStr(Command, " ")))
인수2 = Val(Mid(Command, InStr(Command, " ")))
''입력파일처리
Open "c:\c_it\data\abc10.txt" For Input As #1
For i = 1 To 인수2
Line Input #1, 버퍼
If i >= 인수1 Then
''변수저장
취향 = Trim(Mid(버퍼, 8, 1))
품목코드 = Trim(Mid(버퍼, 31, 2))
대여금액 = Val(Mid(버퍼, 22, 6))
대여횟수 = Val(Mid(버퍼, 10, 4))
연체횟수 = Val(Mid(버퍼, 28, 3))
''합계구하기
If 취향 = "L" Or 품목코드 = "A1" Then
Num = Num + 1
합계(Num) = 대여금액 - (대여횟수 * 연체횟수)
End If
End If
Next i
''정렬(오름차순)
For i = 1 To Num
For j = i To Num
If 합계(i) > 합계(j) Then
Temp = 합계(i)
합계(i) = 합계(j)
합계(j) = Temp
End If
Next j
Next i
''결과값 구하기
For i = (Num - 4) To Num
결과값 = 결과값 + 합계(i)
Next i
Close #1
''''''''출력파일처리
Open "c:\c_it\data\ans1.txt" For Output As #2
Print #2, 인수1, 인수2, 결과값
Close #2
End Sub