Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> умножение матрицы на вектор, не могу найти ошибку 
:(
    Опции темы
votan6442
Дата 24.1.2014, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.1.2014

Репутация: нет
Всего: нет



Помогите!! Не могу найти ошибку(( Требуется умножить квадратную матрицу на вектор, в результате должен получиться вектор, только вот на экран выводит матрицу, а не вектор... всю голову сломал, а код очень нужен((
Код


float *x = (float *)malloc(n*sizeof(float));              // videlenie pod x
x = (float *)malloc(n*sizeof(int));
float **a = (float **)malloc(n*sizeof(float *));
for(int i = 0; i<n; i++)
a[i] = (float *)malloc(n*sizeof(float));                      //выделение памяти под а
 
 
cout << "Enter start vektor" << endl ;
for(i = 0; i < n; i++){
    cout << "x_" << i + 1 << " = "   ;                   // vvod x
    cin >> x[i] ;
}
cout << " Enter A" << endl;
for( i = 0; i < n; i++)
{
    for( j = 0; j < n; j++){
    cout << "A_" <<i + 1<<"= ";                          // vvod matrix A
cin >> a[i][j]; 
    }
}
float *f = (float *)malloc(n*sizeof(float));              // videlenie pod f
f = (float *)malloc(n*sizeof(int));
 
 
for(int i = 0; i < n; i ++){
    f[i] = 0;
    for( j = 0; j < n; j++){                     // ymnojenie a na x
        {
f[i] += a[i][j]*x[j];
 
 
    }
        cout <<"f["<<i+1<<"] = "<<f[i] << endl;
 
    }
}

PM MAIL   Вверх
tzirechnoy
Дата 25.1.2014, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: -1
Всего: 16



1) Ваш пример не компилируется по очевидным причинам. Исправьте к следующему разу -- ну, в смысле, не нам жэ это исправлять.
2) 
Код
x = (float *)malloc(n*sizeof(int));

Уберите, Вы явно со зла это вставили.
3) 
Код
   for( j = 0; j < n; j++){                     // ymnojenie a na x
        {


Ну да, ну да.
PM MAIL   Вверх
bsa
Дата 25.1.2014, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



А строку 33 надо вставить между строками 35 и 36.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0475 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.