Borrar filtros
Borrar filtros

how to create this matrix [1 2 3 4 5;2 2 3 4 5;3 3 3 4 5;4 4 4 4 5;5 5 5 5 5]

17 visualizaciones (últimos 30 días)
Waiting for your response
  1 comentario
John D'Errico
John D'Errico el 9 de Feb. de 2018
Why is it starting to look as if you are asking homework questions? This is now your second question on how to create a basic matrix?

Iniciar sesión para comentar.

Respuesta aceptada

Jos (10584)
Jos (10584) el 9 de Feb. de 2018
Editada: Jos (10584) el 9 de Feb. de 2018
% data
n = 7 % "order"
% engine
x = repmat(1:n,n,1)
x = max(x, x.')
Added after comment: for non-square matrices:
n = 4 ; m = 6 ; % n-by-m matrix
x = max(repmat(1:m,n,1), repmat(1:n,m,1).')

Más respuestas (3)

Andrei Bobrov
Andrei Bobrov el 9 de Feb. de 2018
[x,y] = ndgrid(1:5)
out = max(x , y)
  3 comentarios
Andrei Bobrov
Andrei Bobrov el 9 de Feb. de 2018
@Stephen: Thank you, Stephen!
@Farooq Aamir:
m = 5; n = 8;
[x,y] = ndgrid(1:m,1:n);
out = max(x , y);

Iniciar sesión para comentar.


Torsten
Torsten el 9 de Feb. de 2018
Editada: Torsten el 9 de Feb. de 2018
A = [1 2 3 4 5;2 2 3 4 5;3 3 3 4 5;4 4 4 4 5;5 5 5 5 5];
Best wishes
Torsten.

Benjamin Drewry
Benjamin Drewry el 9 de Feb. de 2018
Well super brute force method, but it helps if you are just beginning to code
clear all; close all; clc
M=5; N=5; % can vary M and N to matrix of size of interest
% preallocate matrix space
concat_matrix=ones(M,N);
j=1;
for i=1:M
if i>N
concat_matrix(i, :)=concat_matrix(i-1,:)+1;
else
repval=ones(1,j).*j;
remains=[numel(repval)+1:N];
concat_matrix(i,1:N)=[repval remains];
j=j+1;
end
end

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by