close

Вход

Забыли?

вход по аккаунту

код для вставкиСкачать
Отчет по лабораторной работе №7
по информатике.
Вариант №7
Выполнила: студентка ПИН ФИТ 1206
Журавлёва Полина
Проверил: Мальков Александр Анатольевич
Задание : Найти закон, по которому формируется указанная матрица.
Разработать алгоритм и по нему составить программу для формирования
квадратной матрицы порядка n. Первый вариант программы – работа со
статическим массивом, второй – с динамическим.
1

0
0

 ...

0

1

1
1
...
1
1
...
0
1
....
...
...
....
1
1
...
1
1
...
1 1 1 

1 1 0 
1 0 0 

... ... ... 

1 1 0

1 1 1 
Алгоритм:
Объявление цел: a(200,200),n
ввод n
'заполнение массива единицами
для i = 1 до n
для j = 1 до n
a(i, j) = 1
все_ для j
Все_ для i
Если n Mod 2 = 1 то
'формирование верхней части матрицы
Для i = 1 до (n / 2) - 1
для j = i + 1 до n - i
a(i, j) = 1
все_ для j
Все_ для i
'формирование нижней части матрицы
Для i = n дo (n / 2) + 2 шаг -1
Для j = n - i + 2 дo i - 1
a(i, j) = 1
Все_ для j
Все_ для i
Иначе
Для i = 1 дo (n - 1) / 2
Для j = i + 1 дo n - i
a(i, j) = 1
Все_ для j
Все_ для i
Для i = n дo (n + 3) / 2 Шаг -1
Для j = n - i + 2 дo i - 1
a(i, j) = 1
Все_ для j
Все_ для i
Все_ если
'вывод массива
Код VBA :
Dim a(200, 200), n As Integer
n = Range("M1").Value
For i = 1 To n
For j = 1 To n
a(i, j) = 1
Next j
Next i
If n Mod 2 = 1 Then
For i = 1 To (n / 2) - 1
For j = i + 1 To n - i
a(i, j) = 1
Next j
Next i
For i = n To (n / 2) + 2 Step -1
For j = n - i + 2 To i - 1
a(i, j) = 1
Next j
Next i
Else
For i = 1 To (n - 1) / 2
For j = i + 1 To n - i
a(i, j) = 1
Next j
Next i
For i = n To (n + 3) / 2 Step -1
For j = n - i + 2 To i - 1
a(i, j) = 1
Next j
Next i
End If
For i = 1 To n
For j = 1 To n
Cells(i, j).Value = a(i, j)
Next j
Next i
1/--страниц
Пожаловаться на содержимое документа