1 / 1 / 0
Регистрация: 19.02.2013
Сообщений: 32
1

Разбиение матриц

22.12.2015, 18:43. Показов 3994. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеется матрица А большой размерности, для примера 1000х1000. Как разбить её на n матриц размерностью 1000х(1000/n)?? (Те как бы разделить вертикальной линией по частям и каждую такую часть принять за другую матрицу). подскажите, пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.12.2015, 18:43
Ответы с готовыми решениями:

Как расположить 5 матриц на побочной диагонали (составить матрицу, состоящую из пяти матриц на побочной диагонали)
Как расположить 5 матриц на побочной диагонали( составить матрицу ,состоящую из пяти матриц на...

Разбиение матриц на произведение двух треугольных
Помогите написать программу разбиения матриц на произведение двух треугольных.

Перемножение матриц, умножение матриц на вектор, сложение матриц
Помогите пожалуйста написать программу, которая производит основные действия с матрицами...

Определите класс матриц. Напишите перегруженные конструкторы для создания одномерной и двумерной матриц. В конструкторы передаются размерности матриц
Доброго времени суток всем) Извините если не в том разделе) Не могу понять как решить данную...

5
Модератор
Эксперт по математике/физике
5237 / 4024 / 1384
Регистрация: 30.07.2012
Сообщений: 12,276
22.12.2015, 18:48 2
Votan, почитайте ЗДЕСЬ...
0
177 / 143 / 50
Регистрация: 07.02.2014
Сообщений: 489
22.12.2015, 20:12 3
Votan,
Matlab M
1
2
3
4
5
6
7
8
9
10
clc, clear all, close all
 
n = 1000;
m = 10;
 
x = randint(n,n,[1,5]);
 
s = size(x,2);
 
x1 = reshape(x,[],s/m);
0
Модератор
1692 / 1546 / 517
Регистрация: 13.09.2015
Сообщений: 5,362
22.12.2015, 21:05 4
Norwall, вы преобразовываете матрицу из одного размера в другой с тем же количеством элементов. Вопрос же был о том, как разбить матрицу на несколько матриц с меньшим количеством элементов каждая.
0
177 / 143 / 50
Регистрация: 07.02.2014
Сообщений: 489
22.12.2015, 22:35 5
Votan, думаю, как-то так:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
clc, clear all, close all
 
n = 50;
k = 5; %Количество матриц, на которое хотим разбить исходную матрицу
m = n/k;
 
x = randint(n,n,[1,5]);
 
s = size(x,2);
 
i = [1,m:m:s];
 
for j = 1:length(i)-1
    m = x(:,i(j):i(j+1));
    if j == 1
        C(j) = {m};
    else
        C(j) = {m(:,2:end)};
    end
end
 
disp(C)
Centurio, я так понял, что количество элементов остается неизменным, меняется количество матриц - была 1, стало n.
0
Модератор
1692 / 1546 / 517
Регистрация: 13.09.2015
Сообщений: 5,362
22.12.2015, 23:57 6
Цитата Сообщение от Norwall Посмотреть сообщение
я так понял, что количество элементов остается неизменным, меняется количество матриц - была 1, стало n.
Ну да! Только ТС просил разбить по строкам.
А зачем такой сложный код? Можно ведь было проще. Кроме того, от последней команды толку мало.
Matlab M
1
2
3
4
5
6
7
8
9
clc, clear all, close all
n = 50;
x = randi([1,5],n);
k = 5; %Количество матриц, на которое хотим разбить исходную матрицу
m = n/k;
for I=1:k
   J=(I-1)*m;
   C(I)={x(J+1:J+m,:)};
end
Добавлено через 18 минут
Впрочем, можно и без цикла обойтись, записав вместо него
Matlab M
1
2
v=repmat(m,1,k);
C=mat2cell(x,v);
только не знаю, с какой версии Матлаба имеется команда mat2cell

Для вывода полученных матриц, если надо, можно воспользоваться командой
Matlab M
1
celldisp(C)
1
22.12.2015, 23:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2015, 23:57
Помогаю со студенческими работами здесь

Отсортировать массив матриц по возрастанию значений сумм элементов этих матриц
вот по этому примеру (здесь условие:дан массив квадратных целочисленных матриц. Отсортировать его...

Используя функцию произведения двух матриц, найдите произведение трех матриц А(3,4) В(4,3) С(3,3)
Используя функцию произведения двух матриц, найдите произведение трех матриц А(3,4) В(4,3) С(3,3).

Создать класс матриц, обеспечивающий размещение матриц произвольного размера
Не знаю правильно ли вообще написана прога(по заданию имею ввиду), но она вообще не работает, не...

Транспонирование, умножение матриц, сложение матриц Реализовать в одной программере
транспонирование, умножение матриц, сложение матриц; B^3-A^T Реализовать в одной программере....


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru