Sympa comme problème je trouve
Bon, voila la version en C avec les méthodes proposées :
Code :
- void rotation(double **mat, int n){
- int i,j;
- double tmp,N=(double)n;
- for(i=0;i<floor(N/2);i++)
- for(j=i;j<n-i-1;j++){
- tmp=mat[i][j];
- mat[i][j]=mat[n-j-1][i];
- mat[n-j-1][i]=mat[n-i-1][n-j-1];
- mat[n-i-1][n-j-1]=mat[j][n-i-1];
- mat[j][n-i-1]=tmp;}
- }
|
Testé avec matrices de dimentions 1 à 5, devrait marcher partout.
Bravo darkoli pour l'idée et à Lan Wezel pour le détail de fin^^
Message édité par dark86 le 10-03-2005 à 23:25:09