Форум программистов, компьютерный форум CyberForum.ru

Умножение матрицы на вектор-столбец - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
cinemamech
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 2
21.10.2013, 22:40     Умножение матрицы на вектор-столбец #1
День добрый (кому-как)
Помогите, а? всю бОшку сломал, выдает Illegal Use of Floating Point
не могу найти косяк.

#pragma hdrstop
#pragma argsused

#include <tchar.h>
#include <stdio.h>
#include <conio.h>
#include <iostream.h>

void Matrix (float **matrix, int col, int row);
void Vector (float *vec, int row);
void Result_Vector (float *mass, int col, int row, float **matrix, float *vec);

int _tmain(int argc, _TCHAR* argv[])
{

cout << "\n Umnozhenie matrici na vector-stolbec" << endl;

float **data, *vector, *res_vector;
int col,row;
cout << "\n counts of vector = count of rows! ";
cout << "\n plz > enter count of rows - ";
cin >> row;
cout << "\n plz > enter count of columns - ";
cin >> col;

//выделение памяти под матрицу
try
{
data = new float*[col];
for (int j = 0; j < col; j++)
data[j] = new float[row];
}
catch (std::bad_alloc)
{
cout << "Could not allocate. Bye ...";
exit(-1);
}
//выделение памяти под вектор
try {
vector = new float[row];
}
catch (std::bad_alloc)
{
cout << "Could not allocate. Bye ...";
exit(-1);
}
//выделение памяти под ризалт_вектор
try
{
res_vector = new float[row];
}
catch (std::bad_alloc)
{
cout << "Could not allocate. Bye ...";
exit(-1);
}

Matrix(data,col,row);
Vector(vector,row);
Result_Vector(res_vector,row,col,data,vector);

//cout << "\n vvedennaya matrica = ";
//VivodVvedennoy(data,row,col);
//cout << "vector = ";
//VivodVectora(vector,row);
//cout << "\n poluchenniy vector = ";
//Vivod_ResVec(res_vector,row);

getch();
return 0;
}

//ввод матрицы
void Matrix (float **matrix, int col, int row)
{
cout << "Input data of matrix:";
cout << "\n";
for(int j=0; j < col; j++)
for(int i=0; i < row; i++)
{
cout << "\nmatrix row [" << i << "] col [" << j << "]";
cin >> matrix[i][j];
}
}
// ввод вектора
void Vector (float *vec, int row)
{
cout << "Input vector:";
cout << "\n";
for (int j = 0; j < row; j++)
{
cout << "\n vector col[" << j << "]=";
cin >> vec[j];
}
}
//---------------------------
void Result_Vector (float *mass, int col, int row, float **matrix, float *vec)
{
for(int i=0; i < col; i++)
for(int j=0; j < row; j++)

*mass[i] += **matrix[i][j] * *vec[j];
}
//---------------------------------------------------------------------------
//Освобождение памяти, занимаемой массивом
//void FreeMassData(float **data, int row)
//{
//for (int i = 0; i < row; i++)
//delete[] data[i];
//delete[] data;
//}
//---------------------------------------------------------------------------
//Отображение элементов массива
//void VivodVvedennoy(float **mass,int row,int col)
//{
//cout << "\InputData:" << endl;
//for (int i = 0; i < row; i++)
//{
//for (int j = 0; j < col; j++)
//cout << newdata[i][j] << " ";
//cout << "\n" << endl;
//}
//cout << "\n" << endl;
//}
//void VivodVectora (float *mass, int col)
//{
// for (int j = 0; j < col; j++)
//cout << vector[j] << " ";
//cout << "\n" << endl;
//}
//void DisplayMassData(float **mass, int row, int col)
//{
//cout << "\nData" << endl;
//for (int i = 0; i < row; i++)
//{
//for (int j = 0; j < col; j++)
//cout << data[i][j] << " ";
//cout << "\n" << endl;
//}
//}

все закомментил что не гоже - не выходит каменный цветок. прошу помощи.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2013, 22:40     Умножение матрицы на вектор-столбец
Посмотрите здесь:

C++ Умножение матрицы на вектор
Умножение матрицы на вектор C++
C++ Среди столбцов матрицы А найти столбец, содержащий минимальное произведение своих элементов и принять этот столбец за вектор X
C++ Реализовать умножение матрицы на матрицу и матрицы на вектор
Умножение матрицы на вектор C++
C++ Умножение матрицы на вектор с использованием функций
Умножение матрицы на вектор C++
Неправильно производится умножение матрицы на вектор C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cinemamech
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 2
23.10.2013, 08:38  [ТС]     Умножение матрицы на вектор-столбец #2
все нашел. отбой )
Yandex
Объявления
23.10.2013, 08:38     Умножение матрицы на вектор-столбец
Ответ Создать тему
Опции темы

Текущее время: 06:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru