Что не так? найдите ошибку плиз!!! - VB
Формулировка задачи:
Товарищи, помоги пожалуйста!
1)Почему у меня в VB6 не воспринимается текст написан.на русск.раскладке
например, пишу
InputBox("введите числа")
а он кодирует текст((( и заметки в проге нельзя писать...Как исправить настройки или версию выше устанавливать? (не желательно)
2)Как привязать элемент VScroll к текстовому полю (чисто для чтения длин.динамического массива данных) - ткните меня где посмотреть!!!
еще одна проблемма: не могу понять, что не так.
Как обнулить данные отображ. в таблице и фактически при повторном запуске проги (без перезагр)?
(откликнитесь пожалуйста. времени совсем мало осталось(((
форма: таблица+ кнопка+ числовое поле
задание: задать размерность матрицы+найти сумму элементов(отриц. и стоящих выше гл.оси)
Option Explicit
Dim Chislo() As Single
Dim m As Integer
Dim n As Integer
Private Sub Command1_Click()
Dim i As Integer, j As Integer, Sum As Single
m = InputBox("m=", "chiclo ctrok ")
n = InputBox("n=", "chiclo ctolbzov ")
'________________________________________________________________
ReDim Chislo(0 To m - 1, 0 To n - 1) As Single
Sum = 0
For i = 0 To m - 1
For j = 0 To n - 1
MSFlexGrid1.Row = i
MSFlexGrid1.Col = j
Chislo(i, j) = i + j
MSFlexGrid1.Text = Chislo(i, j)
If (j > i) And (Chislo(i, j) < 0) Then Sum = Sum + Chislo(i, j)
Next j
Next i
'_________________________________________________________________
Text1.Text = Sum
End Sub
Решение задачи: «Что не так? найдите ошибку плиз!!!»
textual
Листинг программы
фрагмент кода я бы написал так (если речь идет про диагональ, то матрица квадратная, т.е. n=m) [VB]n = 5 ReDim Chislo(0 To n - 1, 0 To n - 1) As Single Sum = 0 'если шапки нет MSFlexGrid1.Clear MSFlexGrid1.FixedRows = 0 ' MSFlexGrid1.FixedCols = 0 ' MSFlexGrid1.Rows = n MSFlexGrid1.Cols = n 'если с шапкой 'MSFlexGrid1.FixedRows = 0 'MSFlexGrid1.FixedCols = 0 'MSFlexGrid1.Rows = m + 1 'MSFlexGrid1.Cols = n + 1 Randomize (Timer) For i = 0 To n - 1 MSFlexGrid1.ColAlignment(i) = 3 For j = 0 To n - 1 Chislo(i, j) = Int(Rnd * 11) - 5 MSFlexGrid1.TextMatrix(i, j) = Chislo(i, j) If (j > i) Then MSFlexGrid1.Row = i: MSFlexGrid1.Col = j MSFlexGrid1.CellBackColor = vbGreen If (Chislo(i, j) < 0) Then MSFlexGrid1.CellBackColor = vbRed MSFlexGrid1.CellForeColor = vbYellow Sum = Sum + Chislo(i, j) End If End If Next j Next i MsgBox Sum
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д