Bonjour,
j'ai reussi à faire un programme qui donne le produit de deux matrices sans pointeurs mais je veux le modifier et intercaler des pointeurs au lieu des compteurs mais je n'arrive pas à faire cette modification ça ne marche pas...
pouvez vous m'aider svp?
voila mon programme sans pointeurs: comment pourrai je le modifier?
N.B: j'ai essayé un petit programme avec un tableau dynamique mais ça n'a pas marché voila ma tentative:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 #include <stdio.h> #include <string.h> #include <conio.h> void main () { int A[50][50],B[50][50],C[50][50],i,j,M,N,P,k; for (j=0;j<P;j++) printf("Donner le nombre des lignes de la matrice A\n"); scanf("%d",&N); printf("Donner le nombre des colonnes de la matrice A et le nombre des lignes de la matrice B\n"); scanf("%d",&M); printf("Donner le nombre des colonnes de la matrice B\n"); scanf("%d",&P); printf("Entrer les elements de la matrice A\n"); for (i=0;i<N;i++) for (j=0;j<M;j++) { printf("Entrer la valeur de A[%d][%d] ",i,j); scanf("%d",&A[i][j]); printf("\n"); } printf("Entrer les elements de la matrice B\n"); for (i=0;i<M;i++) for (j=0;j<P;j++) { printf("Entrer la valeur de B[%d][%d] ",i,j); scanf("%d",&B[i][j]); printf("\n"); } i=0; j=0; do { for (k=0;k<M;k++) for (i=0;i<N;i++) { C[i][j]+=A[i][k]*B[k][j]; } j++; } while ((i!=N) || (j!=P)); for (i=0;i<N;i++) for (j=0;j<P;j++) { printf ("les elements de la matrice C[%d][%d] sont %d \n",i,j,C[i][j]); } getch (); }
Merci d'avance!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 #include <stdio.h> #include <string.h> #include <conio.h> #include <malloc.h> #include <stdlib.h> void main () { int i,j,M,N,P,k,runner; int dimX = 3; int dimY = 3; int **A ; A = (int**)malloc(sizeof(int*)*dimX); for(runner=0; runner <dimX; runner++) { A[runner] = (int*)malloc(sizeof(int)*dimY); } for (i = 0; i < dimX ; i++) for (j = 0 ; j < dimY ; j++) printf("%d",A[i][j]); getch (); }
Partager