2024-10-01 15:08:29 +02:00
|
|
|
-------- TP13 : Tableaux multidimensionnels --------
|
|
|
|
|
|
|
|
|
|
|
|
1.
|
|
|
|
|
|
|
|
# include <stdio.h>
|
|
|
|
# include <stdlib.h>
|
|
|
|
|
|
|
|
int main(void) {
|
|
|
|
/* Déclaration des tableaux */
|
|
|
|
int t1[2][5];
|
|
|
|
int t2[3][5];
|
|
|
|
int t3[5][5];
|
|
|
|
int compteur;
|
|
|
|
/* Remplissage des tableaux */
|
|
|
|
int i;
|
|
|
|
int j;
|
|
|
|
/* t1 */
|
|
|
|
for (i = 0; i != 2; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
t1[i][j] = j + 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* t2 */
|
|
|
|
compteur = 1;
|
|
|
|
for (i = 0; i != 3; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
t2[i][j] = compteur;
|
|
|
|
compteur++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* t3 */
|
|
|
|
compteur = 0;
|
|
|
|
for (i = 0; i != 5; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
if (j >= i) {
|
|
|
|
t3[i][j] = 0;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
t3[i][j] = 1 + j;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* Affichage des tableaux */
|
|
|
|
/* t1 */
|
|
|
|
for (i = 0; i != 2; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
printf("%d ", t1[i][j]);
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
/* t2 */
|
|
|
|
for (i = 0; i != 3; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
printf("%d ", t2[i][j]);
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
/* t3 */
|
|
|
|
for (i = 0; i != 5; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
printf("%d ", t3[i][j]);
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
|
|
|
|
/* Inversions lignes-colonnes */
|
|
|
|
/* t1 */
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
for (i = 0; i != 2; i++) {
|
|
|
|
printf("%d ", t1[i][j]);
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
/* t2 */
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
for (i = 0; i != 3; i++) {
|
|
|
|
printf("%d ", t2[i][j]);
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
/* t3 */
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
for (i = 0; i != 5; i++) {
|
|
|
|
printf("%d ", t3[i][j]);
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
|
|
|
|
return EXIT_SUCCESS;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
2.
|
|
|
|
|
|
|
|
# include <stdio.h>
|
|
|
|
# include <stdlib.h>
|
|
|
|
|
|
|
|
int main(void) {
|
|
|
|
/* Déclaration des tableaux */
|
|
|
|
int t1[2][5];
|
|
|
|
int t2[3][5];
|
|
|
|
int t3[5][5];
|
|
|
|
int compteur;
|
|
|
|
/* Remplissage des tableaux */
|
|
|
|
int i;
|
|
|
|
int j;
|
|
|
|
int k;
|
|
|
|
/* t1 */
|
|
|
|
for (i = 0; i != 2; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
t1[i][j] = j + 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* t2 */
|
|
|
|
compteur = 1;
|
|
|
|
for (i = 0; i != 3; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
t2[i][j] = compteur;
|
|
|
|
compteur++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* t3 */
|
|
|
|
for (i = 0; i != 5; i++) {
|
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
if (j >= i) {
|
|
|
|
t3[i][j] = 0;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
t3[i][j] = 1 + j;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* Affichage des tableaux */
|
2024-10-06 17:22:04 +02:00
|
|
|
for (j = 0; j != 5; j++) {
|
|
|
|
for (i = 0; i != 17; i++) {
|
|
|
|
if (i < 5) {
|
|
|
|
if (j >= 2) {
|
|
|
|
printf(" ");
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
printf("%.2d ", t1[j][i]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* BAKA */
|
|
|
|
else if (i == 5 | i == 11) {
|
|
|
|
printf(" ");
|
|
|
|
}
|
|
|
|
else if (i > 5 && i < 11) {
|
|
|
|
if (j >= 3) {
|
|
|
|
printf(" ");
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
printf("%.2d ", t2[j][i-6]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
printf("%.2d ", t3[j][i-12]);
|
2024-10-01 15:08:29 +02:00
|
|
|
}
|
|
|
|
}
|
2024-10-06 17:22:04 +02:00
|
|
|
printf("\n");
|
|
|
|
}
|
2024-10-01 15:08:29 +02:00
|
|
|
|
|
|
|
return EXIT_SUCCESS;
|
|
|
|
}
|
|
|
|
|
|
|
|
3.
|
|
|
|
|
|
|
|
# include <stdio.h>
|
|
|
|
# include <stdlib.h>
|
|
|
|
# define HAUTEUR 30
|
|
|
|
|
|
|
|
int main(void) {
|
|
|
|
int t[HAUTEUR][HAUTEUR];
|
|
|
|
/* Création du triangle de Pascal */
|
|
|
|
int k;
|
|
|
|
int n;
|
|
|
|
for (k = 0; k != HAUTEUR; k++) {
|
|
|
|
for (n = 0; n != HAUTEUR; n++) {
|
|
|
|
if (k == n && k >= 0) {
|
|
|
|
t[k][n] = 1;
|
|
|
|
}
|
|
|
|
else if (k > n && n >= 1) {
|
|
|
|
t[k][n] = t[k-1][n] + t[k-1][n-1];
|
|
|
|
}
|
|
|
|
else if (k>=0 && n == 0) {
|
|
|
|
t[k][n] = 1;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
t[k][n] = 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/* Affichage */
|
|
|
|
for (k = 0; k != HAUTEUR; k++) {
|
|
|
|
for (n = 0; n != HAUTEUR; n++) {
|
|
|
|
if (t[k][n] != 0) {
|
|
|
|
printf("%d ", t[k][n]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
}
|
|
|
|
printf("\n");
|
|
|
|
return EXIT_SUCCESS;
|
|
|
|
}
|