6 svar
77 visningar
johhbi22 är nöjd med hjälpen
johhbi22 16 – Fd. Medlem
Postad: 10 feb 2020 10:55 Redigerad: 10 feb 2020 11:23

vektor addition

Hej!

A = [1 -2 3];

b= -9;

C = abs(a-b)

t2 = c(1)./c(2)

osv

Problemet är a

Jag får detta felmeddelande : 

Index exceeds the number of array elements (1).

Och jag kör denna kod i en for loop.

Jag tror det har med att variablerna inte är i workspace men jag är osäker varför det ej fungerar.

Dr. G 9342
Postad: 10 feb 2020 11:25

Om du menar

a = [1 -2 3]

b = [-4 -3 3 ]

c = abs(a-b)

t2 = c(1)./c(2)

så är c en vektor med samma dimension som a och b. 

johhbi22 16 – Fd. Medlem
Postad: 10 feb 2020 11:27 Redigerad: 10 feb 2020 11:28

ops

johhbi22 16 – Fd. Medlem
Postad: 10 feb 2020 11:28
Dr. G skrev:

Om du menar

a = [1 -2 3]

b = [-4 -3 3 ]

c = abs(a-b)

t2 = c(1)./c(2)

så är c en vektor med samma dimension som a och b. 

Hej jag skrev fel på min fråga, b ska vara ett värde. och c ska bli en vektor med tre element.

Laguna Online 28543
Postad: 10 feb 2020 11:43

Kan du visa kod som går att provköra som visar felet? 

johhbi22 16 – Fd. Medlem
Postad: 10 feb 2020 12:04

Jag glömde preloccaton

Dvs att lägga till a= zeros(3,1); innan loopen.  För annars ändras storleken under varje dimension och då får man ett sådant fel.!

Laguna Online 28543
Postad: 10 feb 2020 17:39
johhbi22 skrev:

Jag glömde preloccaton

Dvs att lägga till a= zeros(3,1); innan loopen.  För annars ändras storleken under varje dimension och då får man ett sådant fel.!

Det heter preallocation. 

Svara Avbryt
Close