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

в матрице А(n x m) найти первый столбец, не содержащий отрицательных элементов, и умножить его как вектор на матрицу А - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ в заданном тексте выделить две группы слов: в первую определить слова, начинающиеся на согласную букву, во вторую - на гласную http://www.cyberforum.ru/cpp-beginners/thread906667.html
1. в заданном тексте выделить две группы слов: в первую определить слова, начинающиеся на согласную букву, во вторую - на гласную
C++ Сдвиговый регистр Здравствуйте! Помогите написать программу для сдвигового регистра.. http://www.cyberforum.ru/cpp-beginners/thread906662.html
Работа с окном интепретатора командной строки из С++ C++
Знаю, что в cmd.exe можно указывать цвет шрифта и выбирать изменяющуюся область окна. Как это можно сделать из кода С++ в IDE Code Blocks ? Заранее спасибо.
Дан текстовый файл. Напишите программу, определяющую процентное отношение строчных и прописных букв к общему числу символов в нем C++
Задача есть на Паскале, нужно на С++ for i:=1 to length(str) do begin if str in then inc(b); if str in then inc(s); end; writeln('Процент больших ',(b*100)/lenght(str)); writeln('Процент строчных ',(s*100)/lenght(str));
C++ Создайте класс по имени Rational для выполнения арифметических действий с дробями (Подскажите.как дальше писать.я на половину сделал) http://www.cyberforum.ru/cpp-beginners/thread906598.html
2. Создайте класс по имени Rational для выполнения арифметических действий с дробями. Напишите программу драйвера для вашего класса. Используйте целые переменные для представления закрытых данных класса – числителя и знаменателя. Создайте функцию-конструктор, которая позволяет объекту этого класса принимать начальные значения при его объявлении. Конструктор должен содержать значения по умолчанию...
C++ Прошу дополнить (оздайте класс prompt. Введите в него конструктор, который выводит на экран приглашение (строку) и затем позволяет ввести целые числа) 29. Создайте класс prompt. Введите в него конструктор, который выводит на экран приглашение (строку) и затем позволяет ввести целые числа. Класс должен выделить память под строки с длинами, равными введенным целым числам, и случайным образом заполнить их. Функция-член op() должна сформировать новую строку и заполнить ее поочередно символами первой и второй строк. Я написал так ещё нужно... подробнее

Показать сообщение отдельно
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
19.06.2013, 22:23     в матрице А(n x m) найти первый столбец, не содержащий отрицательных элементов, и умножить его как вектор на матрицу А
Цитата Сообщение от Thinker Посмотреть сообщение
MarVaL, вектор это столбец исходной матрицы, смотрите задание
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
60
61
62
63
64
65
66
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdlib>
 
int getIndex(int *matrix, int n, int m) {
  int index = 0;
  for(int j = 0; j != m; ++j) {
    for(int i = 0; i != n; ++i) {
      if(*(matrix + i * m + j) < 0)
        break;
      index = j;
      return index;
    }
  }
  return index;
}
 
 
int main() {
  srand(time(0));
  setlocale(0, "");
  
  int n, m;
  
  std::cout << "n = ";
  std::cin >> n;
  std::cout << "m = ";
  std::cin >> m;
  
  int *matrix = new int[n*m];
  int *vec = new int[n];  
  
  std::cout << "Матрица:" << std::endl;
  for(int i = 0; i != n; ++i) {
    for(int j = 0; j != m; ++j) {
      *(matrix + i * m + j) = 1 + rand() % 5;
      std::cout << std::setw(4) << *(matrix + i * m + j);
    }
    std::cout << std::endl;
  }
  
  int index = getIndex(matrix, n, m);
  std::cout << "Первый столбец без отрицательных элементов:" << std::endl;
  for(int i = 0; i != n; ++i) {
    *(vec + i) =  *(matrix + i * m + index);
    std::cout << std::setw(4) << *(vec + i) << std::endl;
  }
  
  int *result_vec = new int[m];
    
  std::cout << "\nПроизведение вектора на матрицу" << std::endl;
   for(int j = 0; j != m; ++j) {
    *(result_vec + j) = 0;
    for(int i = 0; i != n; ++i) {
      *(result_vec + j) += *(vec + i) * *(matrix + i * m + j);
    }
    std::cout << *(result_vec + j) << std::endl;
  }
  
  delete[] vec;
  delete[] matrix;
  delete[] result_vec;
  
  return 0;
}
Миниатюры
в матрице А(n x m) найти первый столбец, не содержащий отрицательных элементов, и умножить его как вектор на матрицу А  
 
Текущее время: 21:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru