|
| algo qui supprime ligne i, colonne j d'une matrice | |
| | Auteur | Message |
---|
Syba Maître
Nombre de messages : 132 Age : 29 Date d'inscription : 08/09/2012
| Sujet: algo qui supprime ligne i, colonne j d'une matrice Lun 10 Mar 2014, 22:24 | |
| Bonjour, je cherche une confirmation de ce code svp. Le problème consiste à supprimer la ligne i et la colonne j d'une matrice carrée M de dimension dim. En fait, c'est une partie du calcul du déterminent, et le prof d'informatique nous a demandé le programme, donc voila j'attends votre confirmation svp ! Et puis, l'autre code au passage, qui calcule le produit de 2 matrices M et N de dimension dim. #Supprimer# from numpy import * def matrixdelete(M,dim,i,j): ________N=zeros((dim-1,dim-1)) ________a=0 ________b=0 ________for m in range(0,dim): ________________if (m != i) : ________________________for n in range(0,dim): ________________________________if (n != j) : ________________________________________N[a,b]=M[m,n] ________________________________________b=b+1 ________________________a=a+1 ________print(N)#Produit# from numpy import * def matrixproduct(M,N,dim): ________P=zeros((dim,dim)) ________for i in range(0,dim): ________________for j in range(0,dim): ________________s=0 ________________for k in range(0,dim): ________________________s+=M[i,k]*N[k,j] ________________P[i.j]=s ________print(P)Merci d'avance | |
| | | mae24 Féru
Nombre de messages : 30 Age : 33 Localisation : Kénitra Date d'inscription : 02/02/2014
| Sujet: Re: algo qui supprime ligne i, colonne j d'une matrice Mar 11 Mar 2014, 10:05 | |
| Salam, Pour le produit de deux matrices, je te donne la boucle que tu peux utiliser, c'est en langage c et a toi de la traduire en algo, bien sure qu'il faut déclarer les compteurs, la dimension et les trois matrices, et remplir les deux premières. for (i = 0; i < l; i++) for (j = 0; j < c; j++) { int z; P[i][j] = 0; for (z = 0; z < c; z++) P[i][j] += A[i][z] * B[z][j]; } Pour supprimer la ligne k et la colonne l: for(i=0,a=0;i<n;i++) { for(j=0,b=0;j<n;j++) { if(i!=k-1 && j!=l-1) { M[a][b]=mat[i][j]; a++; b++; } } } - code en c de tout le programme pour supprimer une ligne et une colonne::
#include<stdio.h> #include<stdlib.h> main() { int n,i,j,k,l,a,b; int mat[20][20],M[20][20]; printf("Donner la dim \n"); scanf("%d",&n); for(i=0;i<n;i++) { for(j=0;j<n;j++) { printf("mat[%d][%d]= ",i,j); scanf("%d",&mat[i][j]); printf("\n"); } } for(i=0;i<n;i++) { for(j=0;j<n;j++) printf("%d ",mat[i][j]); printf("\n"); } printf("Donner la ligne et la colonne: "); scanf("%d %d",&k,&l); for(i=0,a=0;i<n;i++) { for(j=0,b=0;j<n;j++) { if(i!=k-1 && j!=l-1) { M[a][b]=mat[i][j]; a++; b++; } } } for(i=0;i<n-1;i++) { for(j=0;j<n-1;j++) printf("%d ",M[i][j]); printf("\n"); } system("pause"); }
| |
| | | Syba Maître
Nombre de messages : 132 Age : 29 Date d'inscription : 08/09/2012
| Sujet: Re: algo qui supprime ligne i, colonne j d'une matrice Mar 11 Mar 2014, 11:39 | |
| Merci bcp, j'ai trouvé l'erreur de mon code grace à ce que tu viens d'écrire, le a doit etre initialisé par 0 apres la boucle de m, et le b apres la boucle de n. Merci encore ! | |
| | | mae24 Féru
Nombre de messages : 30 Age : 33 Localisation : Kénitra Date d'inscription : 02/02/2014
| Sujet: Re: algo qui supprime ligne i, colonne j d'une matrice Mar 11 Mar 2014, 23:31 | |
| Avec plaisir, et bon courage! | |
| | | Contenu sponsorisé
| Sujet: Re: algo qui supprime ligne i, colonne j d'une matrice | |
| |
| | | | algo qui supprime ligne i, colonne j d'une matrice | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |