Форум программистов, компьютерный форум, киберфорум
Scilab
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/92: Рейтинг темы: голосов - 92, средняя оценка - 4.90
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136

Найти вектор x из уравнения

07.09.2013, 13:42. Показов 17231. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, я начал изучать scilab и мне дали задание которое я не совсем понимаю как его задать в командной строке)
есть 3 вектора
a1=[14.4,-5.3,14.3,-12.7];
a2=[23.4,-14.2,-5.4,2.1];
a3=[6.3,-13.2,-6.5,14.3];
и надо найти вектор x из уравнения например 3*(a1-x)+2*(a2+x)=5*(a3+x) как это собственно задать? или нужно с начало в тетрадке свести все это к форме x=a1+a3*3+a2 (например) и дальше само посчитает вектор?
или допустим уравнение a1+2*a2+3*a3 +4x=0 преобразовать в x=-(a1/4)-((2*a2)/4)-((3*a3)/4) ??????
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.09.2013, 13:42
Ответы с готовыми решениями:

Найти вектор x,зная что вектор x перпендикулярен вектору a
3)Найти вектор x,зная что вектор x перпендикулярен вектору a,a=(1;0;1),вектор x перпендикулярен вектору b,b=(0;2;-1),проекция вектора x на...

Задан вектор c={c1, c2, …, cn}. Найти вектор y={c1/|c|, c2/|c|, …, cn/|c|}, где |c| - длина вектора c
Задан вектор c={c1, c2, …, cn}. Найти вектор y={c1/|c|, c2/|c|, …, cn/|c|}, где |c| - длина вектора c Примерно так нужно сделать ...

Дан целочисленный вектор А(и). Найти наибольшее из нечетных чисел входящих в вектор. Определить его индекс и поменять
Помогите плиз Дан целочисленный вектор А(и). Найти наибольшее из нечетных чисел входящих в вектор. Определить его индекс и поменять...

21
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
07.09.2013, 19:20
Цитата Сообщение от kyzavr Посмотреть сообщение
и надо найти вектор x из уравнения например 3*(a1-x)+2*(a2+x)=5*(a3+x) как это собственно задать? или нужно с начало в тетрадке свести все это к форме x=a1+a3*3+a2 (например) и дальше само посчитает вектор?
Поскольку задача состоит в раскрытии скобок и приведению подобных членов, то можно и в тетрадке. Хотя часть задачи можно переложить на scilab, воспользовавшись символьными вычислениями.
Вот что придумалось из беглого изучения символьных возможностей по справке:
Matlab M
1
2
3
4
5
6
7
8
a1=[14.4,-5.3,14.3,-12.7];
a2=[23.4,-14.2,-5.4,2.1];
a3=[6.3,-13.2,-6.5,14.3];
 
w = solve(['-3+2-5'], ['-3*a1-2*a2+5*a3']);
print(%io(2), w);
xsol = evstr(w);
print(%io(2), xsol);
Здесь первым параметром функции solve идёт строка из аккуратно выписанных коэффициентов при x, а вторым свободные члены. Функция evstr подставляет значения в полученное символьное решение и выдаёт результат.
Может кто знает, как сделать ещё проще...

А можно зарядить пушку, воспользовавшись решателем по минимуму суммы квадратов
Matlab M
1
2
3
4
5
6
7
8
9
10
11
a1=[14.4,-5.3,14.3,-12.7];
a2=[23.4,-14.2,-5.4,2.1];
a3=[6.3,-13.2,-6.5,14.3];
 
function y=f1(x, m)
   y = 3*(a1-x)+2*(a2+x)-5*(a3+x);
endfunction
 
n = length(a1);
[xsol,v]=lsqrsolve(zeros(1,n),f1,n);
print(%io(2), xsol);
Хотя вообще-то этот метод предназначен для решения систем нелинейных уравнений.
1
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
07.09.2013, 23:06  [ТС]
Спасиб) еще хотел спросить есть ли функция которая считает алгебраические дополнения к каждому элементу в матрице или надо методом поэтапного удаление строк и столбцов ?
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
07.09.2013, 23:39
Цитата Сообщение от kyzavr Посмотреть сообщение
Спасиб) еще хотел спросить есть ли функция которая считает алгебраические дополнения к каждому элементу в матрице или надо методом поэтапного удаление строк и столбцов ?
Я такой не знаю. Если матрица невырожденная, то можно через обратную получить:
Matlab M
1
inv(A).' * det(A)
1
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 12:41  [ТС]
Подскажите еще как эту хрень намутить http://cs424216.vk.me/v4242162... ShSNjw.jpg
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
08.09.2013, 13:20
Исходные данные:
Matlab M
1
2
3
4
5
6
7
A = [
    1  2 -1 1;
    2  1  1 1;
    1 -1  2 1;
    1  1 -1 3
    ];
b = [ 8; 5; -1; 10 ];
Через обратную матрицу, если вычисление обратной не надо программировать самостоятельно:
Matlab M
1
xsol = inv(A)*b;
или
Matlab M
1
xsol = A\b;
Через встроенную функцию:
Matlab M
1
xsol = linsolve(A, -b);
Для метода Крамера надо составить 4 матрицы комбинируя A и b (заменяя в A один из столбцов на b) и делением определителей получаем решения. Это просто, оставляю на самостоятельные эксперименты
С Гауссом не очень понятно. Видимо надо запрограммировать алгоритм? Он тоже, в общем-то, не сложный, но заметно более громоздкий.
1
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 15:42  [ТС]
Спасиб) над будет гауса почитать) походу реально надо запрогать его))

Добавлено через 2 часа 3 минуты
Подскажите в блокноте же если написать все примеры они же норм должны запрогаться? у меня раньше просто выводило ошибку а щас даже файлы не сохраняет) че делать? вот что вылезает http://screenshot.su/show.php?... 7433cf.jpg !
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
08.09.2013, 15:49
Под блокнотом понимается встроенный scinote или notepad.exe? Вообще это похоже на какие-то проблемы в настройке системы. Перезапуск/перезагрузка не помогают?
1
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 15:53  [ТС]
а на счет крамера получается надо составить 4 матрицы?
x1
Matlab M
1
2
3
4
    8.     2.  - 1.    1.  
    5.     1.    1.    1.  
  - 1.   - 1.    2.    1.  
    10.    1.  - 1.    3.
x2
Matlab M
1
2
3
4
    1.    8.   - 1.    1.  
    2.    5.     1.    1.  
    1.  - 1.     2.    1.  
    1.    10.  - 1.    3.
x3
Matlab M
1
2
3
4
    1.    2.    8.     1.  
    2.    1.    5.     1.  
    1.  - 1.  - 1.     1.  
    1.    1.    10.    3.
x4
Matlab M
1
2
3
4
    1.    2.  - 1.    8.   
    2.    1.    1.    5.   
    1.  - 1.    2.  - 1.   
    1.    1.  - 1.    10.
и потом находим определители всех 4 ? и дальше
Matlab M
1
K1=det(x1)/det(A),K2=det(x2)/det(A),K3=det(x3)/det(A),K4=det(x4)/det(A)
Добавлено через 28 секунд
блокнок в силабе)) перезапуск и переустановка не помогают((
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
08.09.2013, 15:55
Да. Только вручную матрицы составлять неудобно и ненужно. Стоит организовать цикл и в нём уже изменять копию матрицы A
Matlab M
1
A_tmp = A; A_tmp(:,i) = b;
0
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 15:59  [ТС]
циклы? не пока мне до них долеко)) я просто через копию буду заменять тогда вот так)
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
     A = [ 1  2 -1 1;
             2  1  1 1;
             1 -1  2 1;
             1  1 -1 3];
     b = [ 8; 5; -1; 10 ];
 
     o=det(A);
     x1=A;
     x2=A;
     x3=A;
     x4=A;
     x1(:,1)=b;
     x2(:,2)=b;
     x3(:,3)=b;
     x4(:,4)=b;
     K=(det(x1)/o;det(x2)/o;det(x3)/o;det(x4)/o)
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
08.09.2013, 16:00
Цитата Сообщение от kyzavr Посмотреть сообщение
блокнок в силабе)) перезапуск и переустановка не помогают((
Ещё сама java могла поломаться. Но тут мне трудно что-либо подсказать. Linux у меня.
1
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 16:03  [ТС]
Цитата Сообщение от grizlik78 Посмотреть сообщение
Ещё сама java могла поломаться. Но тут мне трудно что-либо подсказать. Linux у меня.
Понятн) ну щас джаву еще поставлю новую тогда)) у меня вин8 так что веселюсь переодически то с тем то с другим))


а на счет деления) в ту сторону палка? а то блин правое левое) так и непонял нафига они ))
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
08.09.2013, 16:20
Цитата Сообщение от kyzavr Посмотреть сообщение
а на счет деления) в ту сторону палка? а то блин правое левое)
В ту, в ту То что справа делится на то что слева (для \). Что формально то же самое, что и умножение слева на обратную матрицу. Но вычисляются они по-разному и могут получиться разные результаты (для плохо обусловленных матриц).
1
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 18:10  [ТС]
Что то с гаусом не получается у меня)) если в нете вбить решение но выходит http://screenshot.su/show.php?... 427133.jpg а если сделать как по учебнику http://screenshot.su/show.php?... d4a030.jpg то получается чето не то http://screenshot.su/show.php?... abe6b6.jpg

Добавлено через 30 минут
++ еще вопрос , в моем примере крамер можно составить как 4х4 матрицу а вот у меня след пример там не получается матрица 4х4 ? как в таком случае сделатЬ? так как я ее дажe ввести не могу адекватно))
A2=[2,1,-5,1;1,-3,-6;2,-1,2;1,4,-7,6]; 4334 B=[8;9;-5;0];
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5288 / 4070 / 1392
Регистрация: 30.07.2012
Сообщений: 12,485
08.09.2013, 18:15
Цитата Сообщение от kyzavr
...есть 3 вектора
a1=[14.4,-5.3,14.3,-12.7];
a2=[23.4,-14.2,-5.4,2.1];
a3=[6.3,-13.2,-6.5,14.3];
и надо найти вектор x из уравнения например 3*(a1-x)+2*(a2+x)=5*(a3+x)...
Вот решение Вашей задачи в Mathcad'е...
Миниатюры
Найти вектор x из уравнения  
0
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 18:28  [ТС]
Цитата Сообщение от VSI Посмотреть сообщение
Вот решение Вашей задачи в Mathcad'е...
ДА спасиб ) но тут уже другая проблема) с той то помогли разобраться уже

Добавлено через 11 минут
и + там матрицы не (1,4) а (4,1)
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
08.09.2013, 18:50
Цитата Сообщение от kyzavr Посмотреть сообщение
а если сделать как по учебнику http://screenshot.su/show.php?... d4a030.jpg то получается чето не то http://screenshot.su/show.php?... abe6b6.jpg
У меня получается как по учебнику. Посмотри/покажи матрицы l и C (l плохое название для переменной, похоже на 1 и I)

Добавлено через 2 минуты
Цитата Сообщение от kyzavr Посмотреть сообщение
++ еще вопрос , в моем примере крамер можно составить как 4х4 матрицу а вот у меня след пример там не получается матрица 4х4 ? как в таком случае сделатЬ? так как я ее дажe ввести не могу адекватно))
A2=[2,1,-5,1;1,-3,-6;2,-1,2;1,4,-7,6]; 4334 B=[8;9;-5;0];
Откуда это взялось? Чтобы существовало единственное решение необходимо чтобы количество уравнений было равно количеству неизвестных. При этом получается квадратная матрица.
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5288 / 4070 / 1392
Регистрация: 30.07.2012
Сообщений: 12,485
08.09.2013, 19:19
Цитата Сообщение от kyzavr Посмотреть сообщение
...и + там матрицы не (1,4) а (4,1)
А это и не матрицы, а векторы... А вектор-строка (1,4) или вектор-столбец (4,1) - это уже другой вопрос...
0
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 136
08.09.2013, 19:46  [ТС]
Цитата Сообщение от grizlik78 Посмотреть сообщение
У меня получается как по учебнику. Посмотри/покажи матрицы l и C (l плохое название для переменной, похоже на 1 и I)

Добавлено через 2 минуты

Откуда это взялось? Чтобы существовало единственное решение необходимо чтобы количество уравнений было равно количеству неизвестных. При этом получается квадратная матрица.
это след задание ) просто )) http://screenshot.su/show.php?... 34d7b8.jpg методом крамера))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.09.2013, 19:46
Помогаю со студенческими работами здесь

Найти максимальное значение в каждой строке. Из этих значений получить вектор из 5-ти элементов. Выдать матрицу А и вектор В.
Дана матрица A (5x4). Заполнить ее значениями вещественного типа. Найти максимальное значение в каждой строке. Из этих значений получить...

Вычислить вектор уравнения, используя корень
помогите пожалуйста решить задачку 1) x = (x+1) в кубе 2) x в кубе+0,2x в квадрате+0,5x+0,8=0 1) Для отдельных вещественных...

Задан вектор C={Cn} Найти вектор y={Cn/|C|}
Напишите в Паскале плиз! Заранее спасибо! Задан вектор C={Cn} Найти вектор y={Cn/|C|}

Класс "вектор" с конструкторами, позволяющими создать нулевой вектор и вектор с произвольным числом элементов
Привет! Задача следующая. Нужно реализовать класс "вектор" с конструкторами, которые позволяют создать нулевой вектор и вектор с...

Найти корни квадратного уравнения,заданного своими коэфицентами А,В,С коэфицентами (коэфицент А не равен 0), если известно,что дискриминант уравнения
Найти корни квадратного уравнения A*x2+B*x+C-0,заданного своими коэфицентами A,B,C коэфицентами (коэфицент A не равен 0), если известно,что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru