|
|
|
Найдите ошибку!!!!
|
|||
|---|---|---|---|
|
#18+
Дана матрица A(m, n), 2 m 10, 2 n 10, состоящая из целых чисел. Удалить из матрицы строки, состоящие из одинаковых элементов. Если таких строк в матрице больше половины, то вывести сообщение и матрицу не преобразовывать. Исходную и преобразованную матрицы вывести в текстовые поля. При решении задачи не использовать дополнительных массивов и матриц. Для решения задачи составить следующие подпрограммы: - логическую функцию проверки одной строки матрицы; - процедуру удаления одной строки матрицы; Помогите, пожалуйста, исправить и дополнить!!!!!! Private Sub Vvod (A() As Integer, ByRef m%, ByRef n%) Dim i As Integer Dim j As Integer Do m = Val(InputBox("stroki")) n = Val(InputBox("stolbcyi=")) Loop Until n > 0 And n <= 10 And m > 0 And m <= 10 For i% = 1 To m For j% = 1 To n A(i, j) = Val(InputBox("A(i,j)=")) Next j Next i End Sub Private Sub Вывод(Text1 As Object, A() As Integer, ByVal m%, ByVal n%) Dim s As String Dim i As Integer Dim j As Integer s$ = " " For i% = 1 To m For j% = 1 To n s = s + Str(A(i, j)) + " " Next s = s + vbCrLf Next Text1.Text = s End Sub Private Function Проверка(A() As Integer, ByVal m%, ByVal n%, ByVal num%) As Boolean Dim j As Integer Dim i As Integer Проверка = False For j% = 1 To n - 1 If A(num, j) = A(num, j + 1) Then Проверка = True Exit Function End If Next End Function Private Sub Удаление(A() As Integer, ByRef m%, ByVal n%, ByVal num%) Dim i As Integer For i% = num + 1 To m Next m = m - 1 End Sub Private Sub Command1_Click() Dim b(1 To 10, 1 To 10) As Integer Dim m As Integer Dim n As Integer Dim i As Integer Ввод b, m%, n% Вывод Text1, b, m, n Вывод Text2, A, m, n For i% = m To 1 Step -1 If Проверка(b, m, n, i) = True Then Удаление b, m, n, i End If Next Вывод Text2, b, m, n End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:31 |
|
||
|
Найдите ошибку!!!!
|
|||
|---|---|---|---|
|
#18+
А что ее искать? Ошиблись мы, пытаясь вникнуть в условие... Совет на будущее - приводите пример исходных данных и получаемого результата. А вообще, теперь-то я понял, что в исходнике просто есть строки, состоящие из одних и тех же чисел (напр. 0 0 0 0 или -5 -5 -5), вот с ними и надо разобраться. Лови: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. И не забудь сделать обработку кнопки Cancel в InputBox'е... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2006, 12:50 |
|
||
|
|

start [/forum/topic.php?fid=60&fpage=256&tid=2164894]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 348ms |

| 0 / 0 |
