Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 164
от 29.04.2006, 22:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 180, Экспертов: 47
В номере:Вопросов: 1, Ответов: 2


Вопрос № 41193: Уважаемые Эксперты! Помогите, пожалуйста! Третий день мучаюсь... Как в процедуре матрице путем элементарных преобразований предать специальный ступенчатый вид? С глубочайшим уважением, Mary...

Вопрос № 41.193
Уважаемые Эксперты!
Помогите, пожалуйста! Третий день мучаюсь...
Как в процедуре матрице путем элементарных преобразований предать специальный ступенчатый вид?

С глубочайшим уважением, Mary
Отправлен: 24.04.2006, 22:22
Вопрос задала: Mary (статус: 2-ой класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 9)

Отвечает: EPDSota
Здравствуйте, Mary!

Как обычно ручкой в тетради:
Берешь строку, вычитаешь ее из всех остальных с умножением на нужный коэффициент, чтобы последний элемент обращался в ноль и все...

Приложение:

---------
Открыть глаза навстречу солнцу

Ответ отправил: EPDSota (статус: Специалист)
Ответ отправлен: 27.04.2006, 16:42
Оценка за ответ: 5
Комментарий оценки:
Пасиб, конечно... но с этим у меня проблем не было... :) проблемы начинались, когда надо получить нолики, которые выше единичек...

Отвечает: Полховский Александр Владимирович
Здравствуйте, Mary!
Как я понял, ниже ведущих элементов нули получаются автоматически после прибавления изменённой строки.
Чтобы получить нули выше ведущих элементов, нужно последовательно перебирать строки (начиная со второй строки) и прибавлять эту изменённую строку к выше стоящей, добиваясь нулевого значения во всех выше стоящих позициях. Вот короткая последовательность на Вашем примере:
Исходная матрица, у которой мы будем получать нули выше ведущих элементов
12.53.5-20
011010
001-0.2

4


Теперь умножаем вторую строку на число, равное -a(2; 1), то есть -2.5:
0-2.5-2.50-25

Прибавляем эту строку к первой:
101-2-25

Теперь у нас такая матрица:
101-2-25
011010
001-0.2

4


Теперь надо получить нули у элементов a(3; 1) и a(3; 2).
Умножаем третью строку на коэффициент. равный -a(3; 1), то есть -1:
00-10.2-4

Прибавляем её к первой строке и получаем:
100-1.8-29
011010
001-0.2

4


То же самое проделываем для второй строки: умножаем на коэффициент -a(3; 2), то есть -1:
00-10.2-4

Прибавляем ко второй строке и получаем:
100-1.8-29
0100.26
001-0.2

4



Вот так всё и происходит.
Код... думаю, Вы сами поймёте, что к чему. Последовательность довольно простая, реализуется парой циклов for. Полагаю, Вы в состоянии написать. Если нет - милости просим к нам.
С уважением, Полховский А. В.
---------
Спасём нашу хрупкую планету !
Ответ отправил: Полховский Александр Владимирович (статус: Практикант)
Ответ отправлен: 27.04.2006, 19:17
Оценка за ответ: 5
Комментарий оценки:
Пасиб :)


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.31 от 28.04.2006
Яндекс Rambler's Top100

В избранное