Imbrication de boucle for
Résolu
Axaron
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
Axaron Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Axaron Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai commencé un programme de "calcul matriciel" (enfin l'addition uniquement pour le moment) en C++ afin d'aiguiser ma manipulation des tableaux pour mes études.
Cependant, après plusieurs test et correctifs un bug persiste : une seule de mes boucles for est réalisé a chaque fois.
Voila mon code :
int const tailleMatrice = 10;
int matriceA[tailleMatrice][tailleMatrice];
int i(0), j(0), tailleX(0),tailleY(0);
cout<<"Définition de la taille de la matrice (taille max de "<<tailleMatrice<<")"<<endl<<endl;
do{
cout<<"Saisir le nombre de ligne i"<<endl;
cin>>tailleX;
}while(tailleX>tailleMatrice);
do{
cout<<"Saisir le nombre de colonne j"<<endl;
cin>>tailleY;
}while(tailleY>tailleMatrice);
cout<<"Saisir les valeurs de la matrice A:"<<endl;
for(i; i<tailleX; i++)
{
for(j; j<tailleY; j++)
{
cout<<"Saisir la valeur "<<i+1<<","<<j+1<<endl;
cin>> matriceA[i][j];
}
}
A chaque fois, la ligne pour i=0 se rempli mais je n'ai jamais accès aux suivantes.
Si quelqu'un a une solution, merci beaucoup
J'ai commencé un programme de "calcul matriciel" (enfin l'addition uniquement pour le moment) en C++ afin d'aiguiser ma manipulation des tableaux pour mes études.
Cependant, après plusieurs test et correctifs un bug persiste : une seule de mes boucles for est réalisé a chaque fois.
Voila mon code :
int const tailleMatrice = 10;
int matriceA[tailleMatrice][tailleMatrice];
int i(0), j(0), tailleX(0),tailleY(0);
cout<<"Définition de la taille de la matrice (taille max de "<<tailleMatrice<<")"<<endl<<endl;
do{
cout<<"Saisir le nombre de ligne i"<<endl;
cin>>tailleX;
}while(tailleX>tailleMatrice);
do{
cout<<"Saisir le nombre de colonne j"<<endl;
cin>>tailleY;
}while(tailleY>tailleMatrice);
cout<<"Saisir les valeurs de la matrice A:"<<endl;
for(i; i<tailleX; i++)
{
for(j; j<tailleY; j++)
{
cout<<"Saisir la valeur "<<i+1<<","<<j+1<<endl;
cin>> matriceA[i][j];
}
}
A chaque fois, la ligne pour i=0 se rempli mais je n'ai jamais accès aux suivantes.
Si quelqu'un a une solution, merci beaucoup
A voir également:
- Imbrication de boucle for
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Idm for mac - Télécharger - Téléchargement & Transfert
- Copytrans heic for windows - Télécharger - Visionnage & Diaporama
- Instagram for pc - Télécharger - Divers Communication
- Microsoft store download for pc - Guide
2 réponses
Salut !
Alors, dans tes boucles FOR, il faut indiquer une valeur de départ pour i et j, du genre :
for(i = 0; i<tailleX; i++)
et for(j = 0; j<tailleY; j++)
Alors, dans tes boucles FOR, il faut indiquer une valeur de départ pour i et j, du genre :
for(i = 0; i<tailleX; i++)
et for(j = 0; j<tailleY; j++)
Merci beaucoup, ça marche !
Mais je ne comprends pas vraiment pourquoi, comme j'ai initialisé mes variables la valeur par défaut ne devrait pas être celle initialisé soit 0 ?
Mais je ne comprends pas vraiment pourquoi, comme j'ai initialisé mes variables la valeur par défaut ne devrait pas être celle initialisé soit 0 ?
Et bien c'est le principe de la boucle for : tu indique la valeur de départ, d'arrivée, et le taux d'incrémentation.
Mais tu peux déclarer ta variable à la création de la boucle : for(int i = 0; i < blabla ; i++), ca évitera la répétition.
Ou alors tu déclare au début comme tu l'as déja fait, et tu utilise une boucle while :)
Mais tu peux déclarer ta variable à la création de la boucle : for(int i = 0; i < blabla ; i++), ca évitera la répétition.
Ou alors tu déclare au début comme tu l'as déja fait, et tu utilise une boucle while :)