Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/26: Рейтинг темы: голосов - 26, средняя оценка - 4.92
12 / 12 / 5
Регистрация: 05.07.2009
Сообщений: 147
Записей в блоге: 1
1

Найти детерминант (определитель) матрицы

22.09.2009, 18:33. Показов 5401. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет всем помогите найти в 2D массиве детерминант
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.09.2009, 18:33
Ответы с готовыми решениями:

Две матрицы размером 5 * 5. Найти детерминант их суммы, а также наименьшие и наибольшие элементы
Так сложилось что в понедельник нужно сдать эту лабораторную работу иначе меня исключат из...

Найти определитель матрицы
Всем доброго приятного вечера!! Не могу написать программу на такую вот(см.на рис.) задачу, если...

Найти определитель матрицы
Доброго времени суток. Есть такая задача Вся проблема в том, что не понимаю значения слов:...

Найти определитель матрицы
Нужно найти определитель матрицы 4х4 и больше Не могу понять принцип части кода как находить...

16
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
22.09.2009, 18:35 2
Что такое детерминант?
0
Эксперт С++
2255 / 770 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
22.09.2009, 18:39 3
Цитата Сообщение от qwert Посмотреть сообщение
Что такое детерминант?
определитель

Добавлено через 53 секунды
https://www.cyberforum.ru/cpp/thread3119.html
0
12 / 12 / 5
Регистрация: 05.07.2009
Сообщений: 147
Записей в блоге: 1
22.09.2009, 18:39  [ТС] 4
Цитата Сообщение от qwert Посмотреть сообщение
Что такое детерминант?
посмотри здесь http://ru.wikipedia.org/wiki/%... 0%BB%D1%8C
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
22.09.2009, 18:44 5
По ссылке, что дал Хитрый Минтай есть решение.
0
12 / 12 / 5
Регистрация: 05.07.2009
Сообщений: 147
Записей в блоге: 1
22.09.2009, 18:45  [ТС] 6
Цитата Сообщение от XuTPbIu_MuHTAu Посмотреть сообщение
определитель

Добавлено через 53 секунды
https://www.cyberforum.ru/cpp/thread3119.html
А попроще нету кода??
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
22.09.2009, 18:49 7
Кого порядка определитель? Если второго или третьего, тогда можно попроще, иначе нет. Просто точно не смотрел, что за код по той ссылке.
0
12 / 12 / 5
Регистрация: 05.07.2009
Сообщений: 147
Записей в блоге: 1
22.09.2009, 20:47  [ТС] 8
Ну поможет мне кто не будь или нет
0
80 / 80 / 19
Регистрация: 07.05.2009
Сообщений: 316
22.09.2009, 23:45 9
Поможем

Добавлено через 1 минуту
Дарю
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <stdlib.h>
 
typedef float Mat3x3[3][3];
 
void Print(Mat3x3 M)
{
  for(int i=0;i<3;i++)printf_s("%+.0f %+.0f %+.0f\n",M[i][0],M[i][1],M[i][2]);
}
 
void DelS(Mat3x3 M,Mat3x3 &B,int s)
{
  for(int x=0;x<3;x++)for(int y=0;y<3;y++)B[x][y]=M[x][y];
  for(int i=s;i<3;i++){for(int k=0;k<3;k++){if(i<2){B[i][k]=M[i+1][k];}else{B[i][k]=0;}};}
};
 
void DelC(Mat3x3 M,Mat3x3 &B,int s)
{
  for(int x=0;x<3;x++)for(int y=0;y<3;y++)B[x][y]=M[x][y];
  for(int j=s;j<3;j++){for(int k=0;k<3;k++){if(j<2){B[k][j]=M[k][j+1];}else{B[k][j]=0;}};}
};
 
float CalcOpr(Mat3x3 M)
{
  Mat3x3 B;
  int i=2,j=0;
  float Result=0; float Aij;
  for(int j=0;j<3;j++)
  {
    for(int x=0;x<3;x++)for(int y=0;y<3;y++)B[x][y]=M[x][y];
    DelS(M,B,i); DelC(B,B,j);
    Aij=M[i][j]*(B[0][0]*B[1][1]-B[0][1]*B[1][0]);
    if(((i+j)%2))Aij*=-1;
    printf_s("A[i,j] = %+.0f\n",Aij);
    Result+=Aij;
  }
  return Result;
}
 
Mat3x3 Q={{+1,-1,+4},
          {+2,+3,+7},
          {-4,+0,+2}};
 
int _tmain(int argc, _TCHAR* argv[])
{
  Print(Q);
  printf_s("\n");
  float f=CalcOpr(Q);
  printf_s("--==[{Result}]==--\n");
  printf_s("[Q] = %+.0f\n",f);
  system("pause");
    return 0;
}
1
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
23.09.2009, 05:16 10
Цитата Сообщение от pigah
Привет всем помогите найти в 2D массиве детерминант
Код
| x1 x2 | 
|       | =  x1*x4 - x2*x3
| x3 x4 |
Добавлено через 2 минуты
определитель любого порядка можно привести к определителю второго порядка
0
80 / 80 / 19
Регистрация: 07.05.2009
Сообщений: 316
23.09.2009, 08:33 11
Кстати, насчёт матриц.
Как не страдать подобной фигнёй и скопировать одну матрицу в другую?
C++
1
for(int x=0;x<3;x++)for(int y=0;y<3;y++)B[x][y]=M[x][y];
Приветствуются два варианта, самый короткий и через копирование памяти.
И ещё я хотел спросить почему если я пишу так:
C++
1
B[x,y]
то ошибки не возникает, но выдаётся какая-то лажа?
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
23.09.2009, 08:44 12
это операция запятая

C
1
2
3
4
5
6
7
8
9
10
 
#include <stdio.h>
 
main()
{
    int n[3] = { 1, 2, 3 };
    
    printf("%d" "\n", n[0,1,2]);
    return 0;
}
вывод

Код
[guest@station src]$ ./test
3
[guest@station src]$



Добавлено через 2 минуты
C
1
2
3
#include <string.h>
...
    memcpy(B, M, sizeof M);
1
80 / 80 / 19
Регистрация: 07.05.2009
Сообщений: 316
23.09.2009, 10:38 13
accept
Цитата Сообщение от accept Посмотреть сообщение
int n[3] = { 1, 2, 3 }; printf("%d" "\n", n[0,1,2]);
неожиданно . Спасибо!

Добавлено через 1 час 31 минуту
стоп, так это просто значение последнего указного элемента?
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
23.09.2009, 11:00 14
там две операции "запятая", первая операция возвращает 1, потом выполняется вторая операция, она возвращает 2

выполняется левый операнд, выполняется правый операнд, возвращается результат выполнения правого операнда
1
80 / 80 / 19
Регистрация: 07.05.2009
Сообщений: 316
23.09.2009, 11:09 15
accept
а осмысленно применение у этих штук есть, кроме как запутать читающего программу?
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
24.09.2009, 05:10 16
да это просто операция, где хочешь, там и применяй
0
0 / 0 / 0
Регистрация: 23.09.2014
Сообщений: 9
22.04.2015, 12:40 17
.12312
0
22.04.2015, 12:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2015, 12:40
Помогаю со студенческими работами здесь

Найти определитель матрицы
Написать прогу на с++ : нахождение определителя матрицы методом квадратного корня. Кто сможет...

Найти определитель матрицы
Нужно найти определитель матрицы, НО числа чтобы были десятичные. Целые считает, а вот десятичные...

Найти определитель матрицы
Для матрицы NxN определитель задаётся рекурсивно: кто нить может пояснить как записать проше на...

Найти определитель матрицы
Помогите пожалуйста. У меня дана матрица и нужно найти ее определитель, помогите...:cry: #include...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru