How to extract a Sub-Matrix from a Matrix ?
Posted
by ZaZu
on Stack Overflow
See other posts from Stack Overflow
or by ZaZu
Published on 2010-05-09T02:40:42Z
Indexed on
2010/05/09
2:48 UTC
Read the original article
Hit count: 241
Hello,
I have a matrix in a txt file and I want to load the matrix based on my input of number of rows and columns
For example, I have a 5 by 5 matrix in the file. I want to extract a 3 by 3 matrix, how can I do that ?
I created a nested loop using :
FILE *sample
sample=fopen("randomfile.txt","r");
for(i=0;i<rows;i++){
for(j=0;j<cols;j++){
fscanf(sample,"%f",&matrix[i][j]);
}
fscanf(sample,"\n",&matrix[i][j]);
}
fclose(sample);
Sadly the code does not work .. If I have this matrix :
5.00 4.00 5.00 6.00
5.00 4.00 3.00 25.00
5.00 3.00 4.00 23.00
5.00 2.00 352.00 6.00
And inputting 3 for rows and 3 for columns, I get :
5.00 4.00 5.00
6.00 5.00 4.00
3.00 25.00 5.00
Which is obviously wrong , its reading line by line rather than skipping the unmentioned column ...
What am I doing wrong ?
Thanks !
© Stack Overflow or respective owner