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

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

Войти
Регистрация
Восстановить пароль
 
Alexander Watt
0 / 0 / 0
Регистрация: 13.10.2014
Сообщений: 10
#1

Из матрицы получить вектор - C++

26.11.2014, 22:07. Просмотров 1143. Ответов 10
Метки нет (Все метки)

Из матрицы размером NxM получить вектор B, присвоив его k-му элементу значение 0, если все элементы k-го столбца матрицы нулевые, иначе 1
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2014, 22:07     Из матрицы получить вектор
Посмотрите здесь:

Матрицы. Получить вектор X, равный P-й строке матрицы, и вектор Y, равный Q-му столбцу матрицы - C++
1. Дана матрица A (3 х 5). Получить вектор X, равный P-й строке матрицы, и вектор Y, равный Q-му столбцу матрицы. P и Q запросить у...

Из матрицы получить вектор по правилу - C++
Из матрицы размером N×M получить вектор B, присвоим его k-му элементу значение 0, если все элементы k-го столбца матрицы нулевые, иначе 1....

Получить вектор сумм элементов нечетных столбцов матрицы - C++
1.В матрице вещественных чисел из 5ти строк и 4х столбцов определить кол-во положительных, отрицательных и нулевых элементов 2.Получить...

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

Даны три квадратные матрицы. Сформировать вектор, состоящий из минимальных элементов каждой матрицы, отличных от нуля - C++
Даны три квадратные матрицы. Сформировать вектор, состоящий из минимальных элементов каждой матрицы, отличных от нуля. Поиск минимального...

Получить вектор - C++
Получить вектор С по правилу : Ск=1,если в к-ом столбце матрицы есть хотя бы один элемент,превышающийй заданное значение D,иначе Ск=0.Найти...

Получить вектор по правилу - C++
Подскажите где ошибка ? Даны массивы А(10) и В(10) . Получить вектор Z(10) , где Z(j)=A(j)-B(j); Я написал прогу ну гдето видимо...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
casper007
67 / 67 / 22
Регистрация: 12.12.2013
Сообщений: 400
26.11.2014, 22:57     Из матрицы получить вектор #2
Я такой тупой, или так написано? Допустим, эту часть я понял
"Из матрицы размером NxM получить вектор B, присвоив его k-му элементу значение 0,"
Преобразуем и присвоим значение.
Но вот остальная часть
если все элементы k-го столбца матрицы нулевые, иначе 1
не согласована с первым.
Alexander Watt
0 / 0 / 0
Регистрация: 13.10.2014
Сообщений: 10
26.11.2014, 23:02  [ТС]     Из матрицы получить вектор #3
я сам теперь что-то не понял. Принял бы помощь хотя бы с логической частью сего задания)
Mr_Progger
23 / 23 / 9
Регистрация: 01.11.2013
Сообщений: 170
26.11.2014, 23:12     Из матрицы получить вектор #4
Вроде всё ясно, если элементы k-го столбца нулевые то добавить в вектор 0, иначе добавить 1.
Изначально вектор пуст.
casper007
67 / 67 / 22
Регистрация: 12.12.2013
Сообщений: 400
26.11.2014, 23:32     Из матрицы получить вектор #5
Цитата Сообщение от Mr_Progger Посмотреть сообщение
Вроде всё ясно, если элементы k-го столбца нулевые то добавить в вектор 0, иначе добавить 1.
Как он написал, то это нужно добавить не в конец, а k-ому элементу.
Mr_Progger
23 / 23 / 9
Регистрация: 01.11.2013
Сообщений: 170
26.11.2014, 23:40     Из матрицы получить вектор #6
Цитата Сообщение от casper007 Посмотреть сообщение
Как он написал, то это нужно добавить не в конец, а k-ому элементу.
а k-ый элемент это который?
casper007
67 / 67 / 22
Регистрация: 12.12.2013
Сообщений: 400
26.11.2014, 23:51     Из матрицы получить вектор #7
Цитата Сообщение от Mr_Progger Посмотреть сообщение
а k-ый элемент это который?
вот сюда все и упирается. Условие весьма расплывчато написано
Mr_Progger
23 / 23 / 9
Регистрация: 01.11.2013
Сообщений: 170
26.11.2014, 23:55     Из матрицы получить вектор #8
Цитата Сообщение от casper007 Посмотреть сообщение
вот сюда все и упирается. Условие весьма расплывчато написано
Условие написано ясно, k-ый элемент это номер столбца от 1 до N, а точнее от 0 до N-1

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
#include <iostream>
#include <ctime>
#include <vector>
#include <iomanip>
 
 
int main()
{
    const int n = 3;
    const int m = 3;
    int a = 0, b;
    int matr[m][n] ={ { 0, 1, 1 }, { 0, 23, 3 }, {0, 5, 6}};
    std::vector<int> vect;
    srand(time(NULL));
 
    /*for (size_t i = 0; i < m; i++)
    for (size_t j = 0; j < n; j++)
        matr[i][j] = rand() % 10; */
    for (size_t i = 0; i < m; i++)
    {
        for (size_t j = 0; j < n; j++)
            std::cout << std::setw(2) << matr[i][j];
        std::cout << std::endl;
    }
    std::cout << "---------------------" << std::endl;
    while (a < n)
    {
        b = 0;
        for (size_t i = 0; i < m; i++)
        {
            if (matr[i][a] != 0)
                b = 1;
        }
        if (b == 0)
            vect.push_back(0);
        else
            vect.push_back(1);
    a++;
    }
    for (std::vector<int>::iterator iter = vect.begin(); iter != vect.end(); iter++)
        std::cout << std::setw(3) << *iter;
    std::cout << std::endl;
    system("pause");
    return 0;
}
casper007
67 / 67 / 22
Регистрация: 12.12.2013
Сообщений: 400
27.11.2014, 00:04     Из матрицы получить вектор #9
Цитата Сообщение от Mr_Progger Посмотреть сообщение
k-ый элемент это номер столбца
Я понял. Но не понятно, что куда присвоить. Скорей всего пользователь должен сам указать этот k-ый элемент, и уже на его место поставит 0 или 1
Mr_Progger
23 / 23 / 9
Регистрация: 01.11.2013
Сообщений: 170
27.11.2014, 00:20     Из матрицы получить вектор #10
Цитата Сообщение от casper007 Посмотреть сообщение
Но не понятно, что куда присвоить.
если в первом столбце матрицы все элементы нулевые, то в первый элемент вектора пишем 0 иначе 1
если во втором столбце матрицы все элементы нулевые, то во второй элемент вектора пишем 0 иначе 1
и т.д. пока не переберём все столбцы
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2016, 21:01     Из матрицы получить вектор
Еще ссылки по теме:

Вектор с классом должен получить класс (?) - C++
Добрый вечер! 1) Подскажите, как быть. Есть у меня класс В. есть функция &quot;чтение из файла&quot; class B { int a;

По заданным двумя векторами получить вектор - C++
По заданным двумя векторами A (a1, a2, ..., an) и B (b1, b2, ..., bn) получить вектор C (a1, b1, a2, b2, ..., an, bn)

[C++] Матрицы и вектор - C++
К зачету нужно, не успеваю их решить 3 другие решаю пока. 1)Вычислить А*Х, где А - двумерная матрица, Х - вектор. 2)Удалить из массива...

Получить новый вектор путем деления компоненентов данного вектора - C++
Очень надо,на Си/Си++ Дан вектор В вещественных чисел. Получить новый вектор путем деления компонентов данного вектора на сумму...

Дана квадратная матрица А порядка n, векторы x и y с n-элементами. Получить вектор А(x+y) - C++
Дана квадратная матрица А порядка n, векторы x и y с n-элементами. Получить вектор А(x+y)


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

Или воспользуйтесь поиском по форуму:
Клейтон
0 / 0 / 1
Регистрация: 11.02.2013
Сообщений: 33
31.05.2016, 21:01     Из матрицы получить вектор #11
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
#include<stdio.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
int main()
{int i,n,mini,sum;
int c,y,max=0;
int a[100];
//vvod kol el massiva
printf("vvedite kol elementov massiva\n");
scanf("%i",&n);
//vvod massiva
printf("vvedite elementi massiva\n");
for(i=0;i<n;i++)
scanf("%i",&a[i]);
//vivod massiva
for(i=0;i<n;i++)
printf(" %3d",a[i]);
printf("\n");
 
       //Г*Г*éäåì Г¬Г*ГЄГ±ГЁГ¬Г*ëüГ*ûé ýëåìåГ*ГІ Г¬Г*Г±Г±ГЁГўГ*
    for (i=0;i<(n-1);i++)
      {
        if ((a[i]>=a[i+1])&&(a[i]>=a[max]))
          max=i;
      }
    if (a[n-1]>a[max])
      max=n-1;
    printf("max = %d\n",a[max]);
    //summa el
    if (max!=0)
      {
        sum=0;
        for (i=0;i<max;i++)
          {if (a[i]>0)
          
            sum=sum+a[i];
          }
printf("sum = %d\n",sum);
       }
       
    else
      printf("v promezutke net znachenii\n");
  }
Добавлено через 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
#include<stdio.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
int main()
{int i,n,mini,sum;
int c,y,max=0;
int a[100];
//vvod kol el massiva
printf("vvedite kol elementov massiva\n");
scanf("%i",&n);
//vvod massiva
printf("vvedite elementi massiva\n");
for(i=0;i<n;i++)
scanf("%i",&a[i]);
//vivod massiva
for(i=0;i<n;i++)
printf(" %3d",a[i]);
printf("\n");
 
       //find max element
    for (i=0;i<(n-1);i++)
      {
        if ((a[i]>=a[i+1])&&(a[i]>=a[max]))
          max=i;
      }
    if (a[n-1]>a[max])
      max=n-1;
    printf("max = %d\n",a[max]);
    //summa el
    if (max!=0)
      {
        sum=0;
        for (i=0;i<max;i++)
          {if (a[i]>0)
          
            sum=sum+a[i];
          }
printf("sum = %d\n",sum);
       }
       
    else
      printf("v promezutke net znachenii\n");
  }
Yandex
Объявления
31.05.2016, 21:01     Из матрицы получить вектор
Ответ Создать тему
Опции темы

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