Помогите с прогой на TurboPascal, проверяющую является ли матрица А трёхдиагональной
НУжно составить программу, проверяющую, является ли матрица А трёхдиагональной
Трёхдиагональная матрица выглидит как матрица три диагонали которой (средняя и две прилегающие) не равны нулю, а все остальные элементы, не входящие в эти диагонали, равны 0. Вот тут код есть один, не могу найти ошибку Код:
program diagonal; 1-элементы, входящие в эти три диагонали не равны нулю. 2-элементы , не входящие в эти три диагонали равны нулю. |
dasha131, у тебя вполне рабочий код.
|
Второй код я вообще не поняла, столько непонятных строк...
Давайте лучше разберем мой код, что тут нужно дополнить для работоспособности Цитата:
1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 matrix band: true (согласна) затем вводилась матрица 1 1 0 0 1 0 1 0 0 1 1 1 0 0 1 1 тоесть а[2,2] = 0 это уже не ленточная матрица, но код опять же выводит matrix band: true Дак в чем же ошибка? Нашелся вариант когда программа выводит False Это случай когда элементы не входящие в эти три диагонали неравны нулю. |
Что то сам себе огорчаюсь, теряю квалификацию прям на ходу :(
dasha131, добавь в цикл еще одно условие. Т.е. мы проверяем чтобы все что за 3мя было нулевым, а что внутри - нет. Код:
|
Теперь проверяю этот код
Код:
program asdf; 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 matrix band: true |
dasha131, где у тебя end; // for j ?
цикл Код:
for j:=1 to n do А верней закрыт, но не там. Код:
program asdf; |
Да, теперь работает)) и еще во втором условии не хватало "=" для проверки элементов первой и третьей диагоналей
А что это за закрытие такое интересное Цитата:
|
Цитата:
Показывает принадлежность к for, while, case и т.д. |
А без нее можно код как то записать?
|
:) Ой рассмешила.
Конечно можно! //for j - это комментарий. Он на работу программы никак не влияет :) Вообще, все что за двойным слешем - // это строчный комментарий. Все что между фигурных скобок {многострочный комментарий} |
С многострочным встречалась частенько, а строчный впервый раз вижу =)))
|
Время: 01:56. |
Время: 01:56.
© OSzone.net 2001-