Topic de Baptiste_1m55 :

[C++] Des KHEYS chauds dans ce langage ?

  • 1

Ça fait 2 jours que je galère sur un exercice.

En gros, grâce à la bibliothèque algorithme, numeric, les itérateurs et l’utilisation de vecteur/matrice, créer un vecteur qui contient la somme de chaque colonne.

Exemple

{1, 2, 3}
+
{4, 2, 2}
+
{2, 2, 3}

=
{7, 6, 8} :g) qui donne ça

Redéfinie l'operateur +

Le 12 décembre 2021 à 16:47:34 :
Redéfinie l'operateur +

Je dois utiliser la biblio algo (transform, for_each, fill…)

Le 12 décembre 2021 à 16:52:25 :
Il faut l'énoncé exact

https://image.noelshack.com/fichiers/2021/49/7/1639324642-11a170ea-28c5-4d82-be61-94529fc0c8b5.jpeg

C’est la partie sommeColonne

bizarre de pas vous laisser utiliser des boucles for standards
si il faut absolument utiliser la STL tu devrais pouvoir t'en sortir avec un std::inner_product ou un std::transform.
Genre le std::transform ça donnerait :

std::vector<int> res;
std::transform(mat.begin(), mat.end(), std::back_inserter(res), [](std::vector<int> v) { return std::accumulate(v.begin(), v.end(), 0); });

ça ça doit faire la somme des lignes t'as juste à transposer ta matrice pour faire la somme des colonnes.
Ca reste bien plus simple en faisant juste des boucles for

Le 12 décembre 2021 à 17:11:34 :
bizarre de pas vous laisser utiliser des boucles for standards
si il faut absolument utiliser la STL tu devrais pouvoir t'en sortir avec un std::inner_product ou un std::transform.
Genre le std::transform ça donnerait :

std::vector<int> res;
std::transform(mat.begin(), mat.end(), std::back_inserter(res), [](std::vector<int> v) { return std::accumulate(v.begin(), v.end(), 0); });

ça ça doit faire la somme des lignes t'as juste à transposer ta matrice pour faire la somme des colonnes.
Ca reste bien plus simple en faisant juste des boucles for

Merci, mais avec ta technique je trouve la somme des lignes? j’aurai pas les mêmes résultats si je transpose de ligne à colonne :(
En fait pour mon exemple j’ai pas utilisé le meilleur

{0, 0, 0}
+
{4, 2, 2}
+
{2, 2, 3}

=
{6, 4, 5} ça doit faire ça

Le 12 décembre 2021 à 17:28:59 :

Le 12 décembre 2021 à 17:11:34 :
bizarre de pas vous laisser utiliser des boucles for standards
si il faut absolument utiliser la STL tu devrais pouvoir t'en sortir avec un std::inner_product ou un std::transform.
Genre le std::transform ça donnerait :

std::vector<int> res;
std::transform(mat.begin(), mat.end(), std::back_inserter(res), [](std::vector<int> v) { return std::accumulate(v.begin(), v.end(), 0); });

ça ça doit faire la somme des lignes t'as juste à transposer ta matrice pour faire la somme des colonnes.
Ca reste bien plus simple en faisant juste des boucles for

Merci, mais avec ta technique je trouve la somme des lignes? j’aurai pas les mêmes résultats si je transpose de ligne à colonne :(
En fait pour mon exemple j’ai pas utilisé le meilleur

{0, 0, 0}
+
{4, 2, 2}
+
{2, 2, 3}

=
{6, 4, 5} ça doit faire ça

tu peux transposer ta matrice avant d'appliquer ma fonction, ce qui te donnera la somme des colonnes

Le 12 décembre 2021 à 17:30:54 :

Le 12 décembre 2021 à 17:28:59 :

Le 12 décembre 2021 à 17:11:34 :
bizarre de pas vous laisser utiliser des boucles for standards
si il faut absolument utiliser la STL tu devrais pouvoir t'en sortir avec un std::inner_product ou un std::transform.
Genre le std::transform ça donnerait :

std::vector<int> res;
std::transform(mat.begin(), mat.end(), std::back_inserter(res), [](std::vector<int> v) { return std::accumulate(v.begin(), v.end(), 0); });

ça ça doit faire la somme des lignes t'as juste à transposer ta matrice pour faire la somme des colonnes.
Ca reste bien plus simple en faisant juste des boucles for

Merci, mais avec ta technique je trouve la somme des lignes? j’aurai pas les mêmes résultats si je transpose de ligne à colonne :(
En fait pour mon exemple j’ai pas utilisé le meilleur

{0, 0, 0}
+
{4, 2, 2}
+
{2, 2, 3}

=
{6, 4, 5} ça doit faire ça

tu peux transposer ta matrice avant d'appliquer ma fonction, ce qui te donnera la somme des colonnes

Ah ok merci , oui excellente idée !! :oui:

:cimer:

  • 1

Données du topic

Auteur
Baptiste_1m55
Date de création
12 décembre 2021 à 16:44:27
Nb. messages archivés
11
Nb. messages JVC
11
En ligne sur JvArchive 327