Comment puis-je affecter un numéro à un élément spécifique du vecteur 2D sans modifier d'autres éléments de la rangée de la rangée?
J'essaie d'affecter une valeur à un élément dans un vecteur 2D mais la valeur est attribuée à une rangée entière dans le Vecteur. p> attendu: p> 0 0 0 0 \ n \ n n
0 1 0 0 \ N
0 0 0 0 \ N
0 0 0 0 \ N P> sortie: p> 0 0 0 0 \ N \ N
1 1 1 1 \ N
0 0 0 0 \ N
0 0 0 0 \ N P> P>
4 Réponses :
imprimez-vous le tableau incorrect?
J'aime: p>
Je pense que cela conduira à une chaîne d'erreur de compilateur + = INT n'est pas définie ... et la nouvelle ligne n'est pas déclarée. Essayez de compiler votre code et sa sortie avant de la publier.
Je suis au courant, je voulais juste montrer un exemple. C'est pourquoi j'ai écrit // pseudo code
Ce code peut faire le travail
Ce code est spécifique très à la plate-forme et non vraiment C ++ accorchant la norme. _Tmain _tchar est Microsoft Stuff ...
J'ai édité le code de sorte qu'il puisse être exécuté dans Dev C ++ 5.6.3
CONIO.H est de temps de dinosaure
dans L'affectation fonctionne (bien sûr) Vous venez d'imprimer à tort votre tableau p> ps Ponwer a une bonne idée imaginant que vous imprimez mal votre tableau p> p> cout << a [i] [i] code> doit être remplacé par
COUT << A [I] [J] < / Code> p>
plutôt que d'indexer (et de le faire mal), vous pouvez simplement faire référence aux éléments de chaque vecteur
Je ne vois pas comment
ans [1] [1] = 2; code> est censé produire votre résultat attendu qui ne contient même pas de
2 code>. Je suis sûr qu'il sera plus facile de trouver le problème après avoir modifié votre message et d'inclure tout le code.
Ni ce que vous attendez ni ce que vous avez du sens.
Édité ma question.
@Rajatjaiswal Imprimez-vous votre vecteur 2D juste après l'affectation? C'est comme si l'affectation est faite dans une fonction / méthode pour obtenir le vecteur de valeur (donc l'affectation n'a aucun effet à l'extérieur) et l'impression ailleurs?
Qu'est-ce que
a code> précisément, comment est généré la sortie?
Pour la sortie susmentionnée A = 4
Je crois que je passe A à une fonction et fonctionne de retour de vecteur 2D.
Que fait cette fonction? Soyez plus clair s'il vous plaît, Montrez votre code B>
void prinvec2d (vecteur> & a) {pour (int i = 0; i > generatematrix (int a) {vecteur > ans (a, vecteur (a, 0)); Ans [1] [1] = 1; retourne ans; } int main () {int A = 4; vecteur > abc (a, vecteur (a, 0)); abc = genaMaTematrix (a); prinvec2d (ABC); retour 0; }
donc vous imprimez avec
a [i] [i] [i] code> plutôt que
a [i] [j] [j] [j] code>, une réponse supposée comme la meilleure réponse
J'ai édité la section de code