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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Jacky09
0 / 0 / 0
Регистрация: 15.09.2013
Сообщений: 48
#1

Умножение матрицы на вектор с использованием функций - C++

20.04.2014, 13:15. Просмотров 867. Ответов 7
Метки нет (Все метки)

Помогите разобраться с функциями, что-то читая справочники не особо понятно...
Собственно никакой код)
Как передавать значения массивов и т. д. в другую функцию?
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
53
54
55
56
57
58
59
#include "stdafx.h"
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define k 5
int i,j;
 
void matrix() //что писать в скобках? 
{
    
    int A[k][k],B[k][k],C[k][k];
    srand(time(NULL));
    for (i=0;i<k;i++)
    {
        for (j=0;j<k;j++)
        {
            A[i][j]=rand%21;
            B[i][j]=rand%21;
            C[i][j]=rand%21;
        }
    }
}
 
void vector()
{
    int X[k],Y[k],Z[k];
    srand(time(NULL));
    for(i=0;i<k;i++)
    {
        X[i]=rand%21;
        Y[i]=rand%21;
        Z[i]=rand%21;
    }
}
 
void umn()
{
    int sum;
    int ax[k],by[k],cz[k];
    for(i=0;i<k;i++)
    {
        for(j=0;j<k;j++)
        {
            sum=sum + A[i][j] * X[j];
        }
        ax[i]=sum;
    }
}
 
int otvet()
{
    int w[k];
    for (i=0;i<k;i++)
    {
            w[i]=ax[i]+by[i]-cz[i];
    }
    return w;
    getchar();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2014, 13:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Умножение матрицы на вектор с использованием функций (C++):

Умножение матрицы на вектор - C++
Помогите, нужно создать классы: матрица целых чисел и вектор целых чисел. В классах определить указатели, память выделять динамически. В...

Умножение матрицы на вектор - C++
получается неправильный ответ. 1) умножаю матрицу на число - ок 2) умножаю матрицу на матрицу - ок 3) умножаю матрицу на вектор -...

Умножение матрицы на вектор - C++
Реализовал умножение матрицы на вектор при построчном разбиении. Как переделать, чтобы умножение было реализовано умножение разбиением...

Умножение матрицы на вектор - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #include &lt;math.h&gt; typedef matrix; typedef vector; matrix...

Умножение матрицы на вектор - C++
Нужна помощь, ребята! Вот код программы, выбивает 2 ошибки: 1- значение А должны быть константными, объявляю их как константные,...

Умножение матрицы на вектор - C++
...вопрос, чем будет отлтичатся умножение матрицы на вектор с числами и с тригонометрическими функциями... ...как нужно изменить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Supernatural
287 / 143 / 28
Регистрация: 22.11.2010
Сообщений: 1,500
20.04.2014, 13:50 #2
что нужно вообще?
что за void'ы описали, что они делают?
Jacky09
0 / 0 / 0
Регистрация: 15.09.2013
Сообщений: 48
20.04.2014, 14:00  [ТС] #3
ой ой, простите, забыл задание выложить
Задать целочисленные значения элементам квадратных матриц A = {aij}, B = {bij}, C = {cij} и векторам (матрицам-столбцам) X = {xi}, Y = {yi}, Z = {zi},
где i = 0, 1, 2,..., 4,
j = 0, 1, 2,..., 4 и вычислить вектор W = AX+BY – CZ.
Я и хотел узнать, как правильно разложить все задание на отдельные функции)
Войды задают матрицу и вектор-матрицу
Supernatural
287 / 143 / 28
Регистрация: 22.11.2010
Сообщений: 1,500
20.04.2014, 14:06 #4
опиши, что ты пытаешься сделать в void'ах: matrix, vector, umn и otvet
ты описал отдельные процедуры вроде, а где же основное тело программы?
Jacky09
0 / 0 / 0
Регистрация: 15.09.2013
Сообщений: 48
20.04.2014, 14:11  [ТС] #5
Вообще я думал, сделать так :
Функция Matrix - Задает матрицу 5*5 и заполняет;
Функция Vector - Задает вектор-столбец и заполняет;
Функция Umn - перемножает матрицу на вектор; (у себя в коде уже поправил ошибку по данному поводу)
Функция otvet - видимо надо переименовать в main, сложение и вычитание получившихся столбцов и их вывод
Supernatural
287 / 143 / 28
Регистрация: 22.11.2010
Сообщений: 1,500
20.04.2014, 14:28 #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void matrix() // в скобках можно передать имя массива, размерность передается в отдельных параметрах a,n,m
{
    
    int A[n][m],B[n][m],C[n][m];
    srand(time(NULL));
    for (i=0;i<n;i++)
    {
        for (j=0;j<m;j++)
        {
            A[i][j]=rand%21;
            B[i][j]=rand%21;
            C[i][j]=rand%21;
        }
    }
}
единственное, что не понятно (для меня) твое понимание вектора в отношении задачи
Jacky09
0 / 0 / 0
Регистрация: 15.09.2013
Сообщений: 48
20.04.2014, 15:04  [ТС] #7
Вектор-матрица - матрица состоящая из одной строки(столбца)
Supernatural
287 / 143 / 28
Регистрация: 22.11.2010
Сообщений: 1,500
20.04.2014, 15:33 #8
т.е. у тебя 3 многомерных массива и один одномерный массив(вектор), поправь если не прав.

Добавлено через 10 минут
x,y,z-с какой части вектора взяты эти переменные?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.04.2014, 15:33
Привет! Вот еще темы с ответами:

Реализовать умножение матрицы на матрицу и матрицы на вектор - C++
Доброй ночи форумчане,не знаю куда податься уже, я полный ноль в программировании, но дали задание написать на С++ прогу, Задание такое,...

Умножение матрицы на вектор-столбец - C++
День добрый (кому-как) Помогите, а? всю бОшку сломал, выдает Illegal Use of Floating Point не могу найти косяк. #pragma hdrstop ...

Умножение матрицы на вектор-столбец - C++ - C++
Доброго времени суток, вы можете мне подсказать в чем проблема, выдает ошибку E2060 Illegal use of floating point, что за ошибка я не знаю,...

Неправильно производится умножение матрицы на вектор - C++
ребят, помогите. составил код перемножения матриц и матрицы на вектор. все хорошо работает с экрана. если же вводить с файла , то...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.04.2014, 15:33
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru