![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Baby |
![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 1 Пол: Женский Репутация: ![]() ![]() ![]() |
4 -2 0 1
-3 2 5 1 0 3 4 2 5 1-2 0 |
![]() ![]() |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Цитата(Правила) 1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... FAQ : Массивы, матрицы ... ниже приведена программа, считающая определитель матрицы (рекурсия/приведение к диагональному виду) -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
Только вот конкретно для этой матрицы программа выдаст 0, ибо есть 0 на главной диагонали. Придется менять местами 2 строки, вычислять определитель, и умножать его на -1...
|
chubais |
![]()
Сообщение
#4
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Реальное имя: Басков Репутация: ![]() ![]() ![]() |
Можешь вуделить процедуру в отдельную прогу: работает.
Прикрепленные файлы ![]() |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата работает. Оно, извини, даже не компилируется (тепепаты в отпуске)... Уж выкладываешь что-то, будь добр AA (это тип у тебя такой... Что бы он означал, интересно) тоже описывать. |
наёмнег |
![]()
Сообщение
#6
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Посмотрел в FAQ прогу на вычисление определителя методом приведения к диагональному виду.
epsilon:=Е-10 что ето? Зачем и откуда взялось? |
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Не надо вопросы дублировать...
Это взялось потому, что нельзя (может быть потенциально опасно) сравнивать значения типа Real с нулем через операцию "=", нужно проверять "отклонение от нуля", это особенность машинного представления вещественных типов... В той программе автора устроила точность 10^(-6), т.е. одна стотысячная... Если отклонение от нуля МЕНЬШЕ - число считается равным нулю... Вот и все сложности... |
наёмнег |
![]()
Сообщение
#8
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
1E-10 как то не похоже на маленькое число, мож я чёт путаю е=2.7.... и ещё там MAXN=3, если поставить например 4 то есть матрицу порядка выше, будет работать или прога только для 3его порядка?
с 1E сам разобрался, ток не понял что эт за константа такая. А вот с порядком-нужна помощь! |
volvo |
![]()
Сообщение
#9
|
Гость ![]() |
Упс... там не 1Е-6, а 1Е-10, оказывается... Но это ничего не меняет, Е здесь обозначает НЕ основание натуральных логарифмов, а степень десятки... А ведь степень отрицательная, то есть, 1Е-10 означает 1 / (10^10), то есть, число не маленькое, а ОЧЕНЬ маленькое...
Программа будет работать для любого порядка, я прогонял ее при maxN = 6, все работало... |
мисс_граффити |
![]()
Сообщение
#10
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
![]() это такая форма представления числа. аналогична 1*10 в минус десятой. то есть до Е идет мантисса, а после - степень 10, на которую надо умножить. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
наёмнег |
![]()
Сообщение
#11
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Большое всем спасибо!
|
наёмнег |
![]()
Сообщение
#12
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
а слово exit в конце массива-это что, и можно ли заменить end-ом?
|
volvo |
![]()
Сообщение
#13
|
Гость ![]() |
Нет, нельзя... Exit немедленно выходит из подпрограммы, End у тебя там компилятор не пропустит...
А теперь у меня к тебе вопрос: не кажется ли тебе, что во-первых, влезть со своим вопросом в чужую тему, которой уже больше двух месяцев, да еще и поднимать ее постоянно вот такими вопросами (кстати, напрямую к "простым числам" вопрос об Exit совсем не относится) - это уже слишком? Не знаешь синтаксиса? У тебя что, F1 на клавиатуре заело? Или Help не установлен? В крайнем случае (если это совсем не описывается нигде - задавай вопрос в разделе Теоретические вопросы )... |
наёмнег |
![]()
Сообщение
#14
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Лан, тогда по теме прога правильно работает только для порядка не выше3!
|
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 13:59 |