±â»ç 30° µè°í ¼Ò½ºÄÚµùÀ» ¡é°°ÀÌ Çߴµ¥, °è¼Ó 62¹ø ¿À·ù°¡ ¶ß¸é¼ µð¹ö±×Çϸé line input #1, ¹öÆÛ üũ°¡ µÇ³×¿ä ¤Ñ.,¤Ñ ¿Ö ÀÌ·²±î¿ä? Option Explicit
Sub main() ''Çʼö Dim ¹öÆÛ, k, Àμö1, Àμö2 As Variant ''ÇÙ½É Dim ¿¹¾à½Ç±¸ºÐÄÚµå, Åõ¼÷±â°£, ´©ÀûÁ¡¼ö, num, temp, p, ÇÒÀαݾ×, ÇÕ°è(1000), ¼÷¹Ú¿ä±Ý(1000), ¿¹¾à¹øÈ£(1000) As Variant ''Àμöó¸® Àμö1 = Val(Left(Command, InStr(Command, " "))) Àμö2 = Val(Mid(Command, InStr(Command, " "))) Open "c:\c_it\data\abc0002.txt" For Input As #1 For k = 1 To Àμö2 Line Input #1, ¹öÆÛ If k >= Àμö1 Then ''º¯¼öÀúÀå ¿¹¾à½Ç±¸ºÐÄÚµå = Trim(Mid(¹öÆÛ, 38, 2)) Åõ¼÷±â°£ = Val(Mid(¹öÆÛ, 15, 2)) ´©ÀûÁ¡¼ö = Val(Mid(¹öÆÛ, 40, 5)) ÇÒÀÎ±Ý¾× = Val(Mid(¹öÆÛ, 30, 4)) ''Çհ豸Çϱâ If ¿¹¾à½Ç±¸ºÐÄÚµå = "WA" Or Åõ¼÷±â°£ <= 13 Then num = num + 1 ÇÕ°è(num) = ´©ÀûÁ¡¼ö + ÇÒÀÎ±Ý¾× ¼÷¹Ú¿ä±Ý(num) = Val(Mid(¹öÆÛ, 19, 6)) ¿¹¾à¹øÈ£(num) = Val(Mid(¹öÆÛ, 1, 6)) End If End If Next k ''Á¤·ÄÇϱâ(³»¸²Â÷¼ø or µ¿Àϰª¹ß»ý½Ã ¿¹¾à¹øÈ£) 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 temp = ¼÷¹Ú¿ä±Ý(k) ¼÷¹Ú¿ä±Ý(k) = ¼÷¹Ú¿ä±Ý(p) ¼÷¹Ú¿ä±Ý(p) = temp 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, ¼÷¹Ú¿ä±Ý(4) Close #2 End Sub |