Имя пользователя:
Пароль:
 

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

Аватара для lxa85

Необычный


Contributor


Сообщения: 4466
Благодарности: 995

Профиль | Сайт | Отправить PM | Цитировать


Цитата x3 aka a-droo:
For i = 1 To m * n - 1 'сортирую
Min = Abs(B(i))
k_min = i
...
Next
B(k_min) = Abs(B(i))
B(i) = Min
Next »
Я сейчас точно не могу сформулировать. Но в этих присвоениях - ошибка. Внимательно смотри чему у тебя приравнивается абсолютная величина. Т.е. начало правильное - мы работаем с абсолютными величинами, а конец B(i) = Min - неправильный, т.к. Min - уже сам по себе модульный.
Цитата x3 aka a-droo:
Min = Abs(B(j)) »
А! Ну вот он зверь. К минимуму следует приравнять не модуль, а подмодульную величину.
Тогда код изменится примерно так (проверь):
Код: Выделить весь код
For i = 1 To m * n - 1                     'сортирую
 Min = B(i)
 k_min = i
  For j = i + 1 To m * n
   If Abs(B(j)) > Abs(Min) Then
    Min = B(j)
    k_min = j
   End If
  Next
 B(k_min) = Abs(B(i))
 B(i) = Min
Next
Что делает k_min я не понял, и честно сказать саму сортировку пока тоже не понял. На метод пузырька вроде похож, а вроде и нет. ... Ну и ладно, фиг с ним, главное, чтобы работал.

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 00:29, 12-12-2011 | #2