Показать сообщение отдельно

помогите с програмированием
Старый 25.12.2012, 07:23   #1
Завсегдатай форума
 
Аватар для coooler
 
coooler вне форума
Регистрация: 19.09.2009
Адрес: Бирск
Сообщений: 1,048
Отправить сообщение для coooler с помощью ICQ
По умолчанию помогите с програмированием

Вообщем есть программа в бэйсике- 1 процедура сортирует массив, вторая- реализует интерполяционный поиск в нем, в с поиском как раз и трабла- почему то при выполнении программа зависаеит. вот код:
тык:
Dim x(20) As Integer, N As Integer
Private Sub Command1_Click()
N = 0: Picture1.Cls
Open "c:\A.txt" For Input As #1
While Not EOF(1)
N = N + 1
Input #1, x(N)
Wend
Close #1
d = (N \ 2)
s = d
q = 0
While q < s
For i = 1 To N - d
If x(i) > x(i + d) Then
m = x(i)
x(i) = x(i + d)
x(i + d) = m
End If
Next i
If d = 1 Then
q = q + 1
d = (N \ 2)
Else
d = (d \ 2)
If d <> 1 Then
If d Mod 2 = 1 Then
d = (d \ 2) + 1
End If
End If
End If
Wend
For i = 1 To N
Picture1.Print x(i)
Next i

End Sub

Private Sub Command2_Click()
t = Val(Text1.Text)
l = 1
r = N

While (x(r) > t) And (t <= x(l))
i = Int((r - l) * (t - x(l)) / (x(r) - x(l)))
If t < x(i) Then
l = i + 1
Else:
If t > x(i) Then
r = i - 1
Else: l = i
End If

End If


Wend
If x(l) = t Then
Picture2.Print "NAYDENO"
Else
Picture2.Print "Ne naydeno"
End If


End Sub


Private Sub mrpropper_Click()
Picture2.Cls
End Sub
  Ответить с цитированием