4 svar
87 visningar
elikamedmc2 är nöjd med hjälpen
elikamedmc2 119
Postad: 16 sep 2021 17:11

Skapa en 10x10 "invers" eye-array

Hej,

Jag försöker lista ut hur man får en 10x10 array med ettor överallt förutom en diagonal genom mitten som ska vara nollor. I princip en "invers" eye array. Är nybörjare, så kan inte värst många kommandon än. Jag vet inte riktigt hur jag skall kombinera olika kommandon tillsammans. "Ones(10,10)" börjar jag med, men sen vill jag ha en "diag(zeros)" genom hela den... 

Mvh

Skaft 2373 – F.d. Moderator
Postad: 16 sep 2021 17:18

Om du kan göra en matris med ettor överallt, och sen en enhetsmatris (eye) med ettor på diagonalen och nollor annars, borde du sen kunna subtrahera den andra från den första för att få nollor på diagonalen.

elikamedmc2 119
Postad: 16 sep 2021 17:22
Skaft skrev:

Om du kan göra en matris med ettor överallt, och sen en enhetsmatris (eye) med ettor på diagonalen och nollor annars, borde du sen kunna subtrahera den andra från den första för att få nollor på diagonalen.

Ååh så lätt var det! Tack!

a = ones(10,10);
b = eye(10,10);

a-b = ...

Ungefär så tänkte du?

Skaft 2373 – F.d. Moderator
Postad: 16 sep 2021 17:27

Mja, c = a-b.

a-b kan du inte använda som en variabel på det där sättet, det är ju en beräkning som ger dig något. Det du får kan du lagra i en variabel, som kan heta t.ex. c.

elikamedmc2 119
Postad: 16 sep 2021 17:31
Skaft skrev:

Mja, c = a-b.

a-b kan du inte använda som en variabel på det där sättet, det är ju en beräkning som ger dig något. Det du får kan du lagra i en variabel, som kan heta t.ex. c.

Jo precis, det var jag som var otydlig där. Hade, precis som du skriver, benämt arrayen till c vilket jag använder för att komma åt den senare. Tack för hjälpen!

Svara Avbryt
Close