Error using reshape To RESHAPE the number of elements must not change.
3 次查看(过去 30 天)
显示 更早的评论
This is the code:
d = input('Enter the number of rows(d) : ');
k = input('Enter the number of columns(k) : ');
for i=1:d
for j=1:k
T(i,j)= input('Enter the elements - ');
end
end
T = reshape(T,d,k);
I've put 30 as row number and 3 as column number.After entering the elements it shows this error "Error using reshape To RESHAPE the number of elements must not change." Help me to solve this
3 个评论
Kaninika Pant
2018-6-1
You created T with d number of rows and k number of columns. reshape(T,d,k) will not modify anything. Why are you doing this?
采纳的回答
Kaninika Pant
2018-6-1
编辑:Kaninika Pant
2018-6-1
I agree with the previous answer. In your code the size of T is changing dynamically. Suppose you ran the code first with d=3, k=2. Then without first clearing the variable T you must have ran your code again with different number of rows and columns. Now if the new number of rows or columns is less than what was defined previously the size of T will not change, only the values at those indices would get altered and so reshape will throw this error.
更多回答(1 个)
Fangjun Jiang
2018-5-31
There is no error in your code. It should have no error if your put in all the d*k elements.
There is no need to run reshape(). Your matrix T is already in dxk.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!