| mini_lulu |
Bonjour tout le monde,
Je suis un peu "novice" en C++, en fait je cherche à faire une rotation d'un tableau à deux dimensions.
Je teste, je teste mais je n'y arrive point, donc je fais appel à vous ^^
Mon problème un peu simplifié :
Code :
- #include <myconio.h>
- #include <iostream>
- #include <iomanip>
- using namespace std;
- #define NbColonnes 6
- #define NbLignes 4
- int main()
- { int l=0, c=0, mem=0;
- char Tab[NbLignes][NbColonnes]={ {'V','B','R','T','U','I'}, {'P','P','V','O','U','M'}, {'C','F','R','V','H','R'}, {'Q','A','Z','X','Q','T'} };
- // -------------- tableau original
- for(l=0;l<NbLignes;l++)
- { for(c=0;c<NbColonnes;c++)
- { cout << Tab[l][c] << ' ' ;
- }
- cout << endl;
- }
- cout << endl;
- //--------------- tableau que je veux obtenir
- char TabObtenu[NbColonnes][NbLignes]={ {'Q','C','P','U'}, {'A','F','P','B'}, {'Z','R','V','R'}, {'X','V','O','T'}, {'Q','H','U','U'}, {'T','R','M','I'} };
- for(c=0;c<NbColonnes;c++)
- { for(l=0;l<NbLignes;l++)
- { cout << TabObtenu[c][l] << ' ' ;
- }
- cout << endl;
- }
- cout << endl;
- // -------------- tableau après 'rotation a droite'
- for(l=0;l<NbColonnes;l++)
- { for(c=0;c<NbLignes;c++)
- { Tab[NbLignes-(l+1)][c]=Tab[c][l];
- cout << Tab[NbLignes-(l+1)][c] << ' ' ;
- }
- cout << endl;
- }
- getch();
- return 0;
- }
|
En fait c'est la partie " tableau après 'rotation a droite' " le problème. Je veux remplacer le tableau initial en fait. Peu importe si je créer un tableau intermédiaire, mais je veux traiter le tableau "Tab". Je crois que c'est possible enfin, juste par le biais d'un échange de valeurs ?!
Auriez vous un petit coup de pouce ou une piste ?
Merci beaucoup d'avance :) |