benhilal
-
23 nov. 2016 à 15:33
nagaD.scar
Messages postés4280Date d'inscriptionsamedi 8 septembre 2007StatutMembreDernière intervention 4 janvier 2023
-
28 nov. 2016 à 12:23
Bonjour,
J'ai un programme ou je doit utiliser des boucles imbriquer. Je veux faire K boucles avec K et un paramètre , la taille de chaque boucle dans un tableau N[K] , un tableau des indices i[k] :
for ( i[0]=0 ; i[0]<N[0] ; i[0]++){ for ( i[1]=0 ; i[1]<N[1] ; i[1]++){ for ( i[2]=0 ; i[2]<N[2] ; i[2]++){ for ( i[3]=0 ; i[3]<N[3] ; i[3]++){ . . . for ( i[K-1]=0 ; i[K-1]<N[K-1] ; i[K-1]++){ .......................... } . . . } } } }
à chaque fois le K augmente le programme devenir lourde et je n'arrive pas à l'exécuter.
comment je peux réduire les boucles d'une manière optimal pour accélérer mon programme.
supposons que j'ai une matrice M de dimension K et je veux calculer la dérivation partiel pour chaque dimension de cette matrice.
Alors pour la dimension K je dois utiliser K boucles pour chaque dériver partiel
Je 'excuse c'est une erreur de notation .
J'ai une matrice M de dimension K avec k = 0,1,2....K pour chaque dimension k j'ai une taille N[k]. je veux calculer la dérivation partielle pour chaque dimension de cette matrice
Si j'ai la dimension K=7 je dois avoir 7 blocs pour calculer la dérivée partielle pour chaque dimension et dans chaque bloc il faut 7 boucles imbriquées.
Je veux réduire mon programme dans une seul bloc.
Merci pour votre aide
EDIT : Ajout des balises de code (la coloration syntaxique). Explications disponibles ici : ICI
Hors, dans ton code, ton tableau à une troisième dimension, ce qui sous entant un 3ème axe .... je penses que tu es dans l erreur non? Car tu ne semble pas vouloir t intéresser aux matrices cubiques ( ou même supérieur) je me trompe?
Car si tu veux en effet dériver des matrices sous N dimensions (je serai d ailleurs curieux de savoir le contexte pour la7 ème dimension).
Pour commencer je pense qu en exposant ton algo de cette manière: