i want to write a code which is a(k)+a(j), but k can't be equal to j,then sum it every stage ,i mean
- when k=1,sumj=a(k)+a(j)=a(1)+a(2)=3, sumj=a(k)+a(j)=a(1)+a(3)=4, sumj=a(k)+a(j)=a(1)+a(4)=5,b=3+4+5=12
- when k=2 ,sumj=3,sumj=5,sumj=6,b=3+5+6=14
- when k=3 ,sumj=4,sumj=5,sumj=7,b=4+5+7=16
- when k=4 ,sumj=5,sumj=6,sumj=7,b=5+6+7=18
a=[1 2 3 4] sumj=0; b=0; for k=1:4 for j=1:4 if j~=k sumj = a(k)+ a(j) end end b=b+sumj end
but this code will show
> sumj=3,sumj=5,sumj=6,b=5+6=11 (b shouldn't be 11,it should be 14)
> sumj=4,sumj=5,sumj=7,b=5+6+7=18 (b shouldn't be 18,it should be 16)
> sumj=5,sumj=6,sumj=7,b=5+6+7+7=25 (b shouldn't be 25,it should be 18)
How do i modify the code to let the result become what i want?
Best Answer