ошибка C ++: cannot convert ‘':: Вектор <double>’ to ‘doublВ in assignment sum_aux=A [f] [j] *xk [j];

Хорошие! У меня есть проблемы с выставленной ошибкой, когда я пробую умножать массив A с вектором xk. Массив A я беру ее внешнего файла ввода. Кто-то умел бы говорить мне, как упорядочивать это?. Большое спасибо заранее! Я присоединяю интересные части кода:

Matrix <double> A,B,C;

Vector <double> xk[9] = {27.0000, -0.000901816789824, 0, 0, 0, 0,0, -0.000901816789824 , 0};

int f,j,n, m, p,a,b,b2,c,tam;

double sum_aux=0;
a = 9;
A.resize(a, a);

//Para matriz A
{
    getline(myfile, line);      
    std::istringstream is(line);

    for (int i = 0; i < a; i++) 
        for (int j = 0; j < n; j++)
            is >> A[i][j] >> ch;
}
for(f=1;f<=a;f++){
    sum_aux=0;
    for(j=1;j<=a;j++){
        sum_aux=(double)A[f][j]*xk[j];
        sum_aux=sum_aux + (double)A[f][j+1]*xk[j+1];
    }
    xk_aux[j]=sum_aux;
}
1
задан 09.02.2017, 18:38
0 ответов

Может быть, ты мог бы пытаться с простыми примерами. Также ты можешь пытаться делать доступы с функциями книжного магазина вектор в C ++, например функция "at". Протестируй код, похожий на следующего:

#include <iostream>
#include <vector>

using namespace std;

int main()
{
    vector<double> xk(9);
    xk.resize(9);
    xk.at(0)=27;
    xk.at(1)=0;
    xk.at(2)=0;
    xk.at(3)=0;
    xk.at(4)=0;
    xk.at(5)=0;
    xk.at(6)=0;
    xk.at(7)=0;
    xk.at(8)=0;

    /* Ejemplo de multiplicación. */
    double res = 0.0;

    res = 2*xk.at(0);

    cout << res << endl;
    return 0;

}

Привет!

0
ответ дан 03.12.2019, 17:31