Автор Никита Ряховский задал вопрос в разделе Другие языки и технологии
Помогите пожалуйста. Visual Basic - массивы и получил лучший ответ
Ответ от Ra[гуру]
Тебе количество квадратов надо подсчитать?
Достаточно подсчитать количество верхних левых углов и получишь искомое число квадратов.
Есть четыре варианта: 1) квадрат в верхнем левом углу карты 2) квадрат в на верхней границе карты 3) квадрат на правой границе карты 4) квадрат внутри карты. В принципе, все проверки этих вариантов можно сделать считывая по одной строке из файла и анализируя каждый символ этой строки:
Dim i, j, squares, fd As Integer
Dim c, lc, uc, s, sp As String
fd = FreeFile
Open ("c: empinput.txt") For Input As #fd
i = 1
Do Until EOF(fd)
Line Input #fd, s
For j = 1 To Len(s)
c = Mid(s, j, 1)
If c = "1" Then
If j = 1 Then: lc = "0": Else lc = Mid(s, j - 1, 1)
If i = 1 Then: uc = "0": Else uc = Mid(sp, j, 1)
If lc = "0" And uc = "0" Then: squares = squares + 1
End If
Next
sp = s
i = i + 1
Loop
В squares будет искомое число квадратов. В Open ("input.txt") вместо input.txt подставь полный путь к твоему файлу.