ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

05.11.2007, 18:02
|
|
Moderator - Level 7
Регистрация: 17.05.2007
Сообщений: 220
Провел на форуме: 3013539
Репутация:
441
|
|
Перемножение матриц...
Пока разбирался с указателями с посыла inv, написал вот такую весчь, может кому пригодится:
Код:
#include<iostream>
using namespace std;
typedef int* pint;
void fillarray(pint array[], int m, int n);
void result(pint a[], pint b[], int m, int k ,int n);
int main()
{
int m,n,k;
char exit;
cout<<"Input 1st array size: "<<endl<<"m: ";
cin>>m; cout<<"n: "; cin>>k;
cout<<"Input 2nd array size: "<<endl<<"m: "<<k<<endl<<"n: ";
cin>>n;
pint *p=new pint[m],*q=new pint[k];
for (int i=0;i<m;i++)
p[i]=new int[k];
for (int i=0;i<k;i++)
q[i]=new int[n];
fillarray(p, m,k);
fillarray(q, k,n);
result(p,q,m,k,n);
for (int i=0;i<k;i++)
delete p[i];
for (int i=0;i<n;i++)
delete q[i];
delete[] p, q;
cout<<"Input any key to quit: ";
cin>>exit;
return 0;
}
void fillarray(pint array[], int m, int n)
{
cout<<"Input "<<m<<"x"<<n<<" array: "<<endl;
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
cin>>array[i][j];
}
void result(pint a[], pint b[], int m, int k, int n)
{
int sum(0);
cout<<"Result "<<m<<"x"<<n<<" array:"<<endl;
for(int i=0; i<m; i++)
for(int j=0; j<n; j++)
{
for(int h=0; h<k ;h++)
{
sum=sum+a[i][h]*b[h][j];
}
cout<<sum<<" ";
sum=0;
if (j==n-1) cout<<endl;
}
}
прога перемножает 2 матрицы произволных размеров и выводит результат на экран (в отдельный массив забивать результат не стал ибо память и лень  )
|
|
|

05.11.2007, 18:33
|
|
Участник форума
Регистрация: 22.10.2007
Сообщений: 138
Провел на форуме: 2454040
Репутация:
177
|
|
зачем изобретать велосипед, насколько я помню , в экселе это стандартная функция))
|
|
|

05.11.2007, 18:44
|
|
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
Провел на форуме: 548128
Репутация:
104
|
|
так он же вроде ясно написал "Пока разбирался с указателям..."
в экселе это будет посложней:d (разбираться с указателями)
|
|
|

05.11.2007, 18:58
|
|
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме: 6490435
Репутация:
2290
|
|
Ну блин, давайте теперь все свои лабы вываливать...
|
|
|

05.11.2007, 19:00
|
|
Banned
Регистрация: 03.08.2007
Сообщений: 313
Провел на форуме: 951141
Репутация:
291
|
|
Сделайте раздел для подобных случаев...че париться-то
|
|
|

05.11.2007, 20:35
|
|
Участник форума
Регистрация: 30.09.2006
Сообщений: 165
Провел на форуме: 535407
Репутация:
57
|
|
Сообщение от Vertexe
(в отдельный массив забивать результат не стал ибо память и лень  )
Во первых - резон от такой проги, которая только выводит на экран рассчеты. Во вторых Это голый метод - никакой оптимизации. Это может написать каждый - пользы от него никакой.
Ладно сегодня завтра напишу немного по теории численных методов - чтобы не писали в лоб, а хотя бы немного оптимизировали.
|
|
|

05.11.2007, 20:40
|
|
Moderator - Level 7
Регистрация: 17.05.2007
Сообщений: 220
Провел на форуме: 3013539
Репутация:
441
|
|
Давай, буду признателен
|
|
|

05.11.2007, 21:11
|
|
Познавший АНТИЧАТ
Регистрация: 13.04.2006
Сообщений: 1,738
Провел на форуме: 5151669
Репутация:
1198
|
|
есть такая софтина как mathlab(вроде), она считает енто
|
|
|

05.11.2007, 21:23
|
|
Moderator - Level 7
Регистрация: 17.05.2007
Сообщений: 220
Провел на форуме: 3013539
Репутация:
441
|
|
я ж написал, что делал это с целью освоения указателей, не более, вдруг тоже кто-то будет с этим разбираться, а у меня как раз рассмотрены случаи динамических массивов и указатели, как параметры ф-ции...
|
|
|

05.11.2007, 21:48
|
|
Участник форума
Регистрация: 30.09.2006
Сообщений: 165
Провел на форуме: 535407
Репутация:
57
|
|
Сообщение от Sn@k3
есть такая софтина как mathlab(вроде), она считает енто
Ну простите если матлаб это софтина))) матлаб это среда математического моделирования - очень мощная, и гибкая. Но Весит гиг (новая версия) и в нее еще надо врубиться. А перемножать матрицы проще конечно в экселе), да вот только куда приятнее самому написать метод, только толковый.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|