PDA

View Full Version : برنامه ترانهاده ماتریس--- کسی میتونه کمک کنه



mohandesvahid
سه شنبه 10 شهریور 1394, 20:58 عصر
سلام
یه برنامه نوشتم برای ترانهاده ماتریس --- با فراخوانی تابع ترانهاده ماتریس انجام میشه ولی موقع چاپ متوجه میشی که یه خطای منطقی شاید بشه گفت اتفاق افتاده.
من برنامرو نوشتم ولی نمی دونم برنامه دچار سرریز میشه چه اتفاقی میوفته؟؟؟
برنامه به صورت زیر هست:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
int mata[2][2];
int matc[1][2];
int c,d;
int transpose[2][2];
printf("enter the matrix of a ");
for (c = 0; c < 2; C++‎‎‎) {
for (d = 0; d < 2; d++) {
scanf("%d", &mata[c][d]);
}
}

printf("[%d\t%d\n%d\t%d]\n",mata[0][0],mata[0][1],mata[1][0],mata[1][1]);
transposemat(&mata,2,2);
printf("[%d\t%d\n%d\t%d]\n",transpose[0][0],transpose[0][1],transpose[1][0],transpose[1][1]);

return 0;

}

//define function
void transposemat(int *mata[][2],int k1,int k2) //k1 is rows number and k2 is colums number
{
int c, d, matrix[2][2], transpose[2][2];
for (c = 0; c < k1; C++‎‎‎)
for( d = 0 ; d < k2 ; d++ )
transpose[d][c] = matrix[c][d];


printf("Transpose of entered matrix :-\n");

for (c = 0; c < k2; C++‎‎‎) {
for (d = 0; d < k1; d++)
printf("%d\t",transpose[c][d]);
printf("\n");
}
}

ehsan_faal
سه شنبه 10 شهریور 1394, 21:02 عصر
سلام.کد هاتو داخل تگ بذار تا خوندنش راحت تر بشه.
در ضمن اگه برات مهم نیست که حتما خودت بنویسی میتونی از کتابخانه armadillo (http://arma.sourceforge.net/)استفاده کنی که استفاده ازش خیلی راحته.