map-aufruf in map



  • Hallo, kann man sowas machen?

    for(map<int, int>::const_iterator itr(m.begin()); itr != m.end(); ++itr)
            cout << "TeilerSumme " << itr->first << " Vorkommen bei " << itr->second 
    
           << for(map<int, int>::const_iterator itr(m.begin()); itr != m.end(); ++itr)
              cout<< 
                 if (first1 == first2)
                      {
                      cout<<" "<<itr->second;
                      };
    endl;
    

    Ich weiß nicht, ob er im if das first vom 1. for mit dem first vom 2. for vergleicht, was das Ziel ist.... jedenfalls ist mir das in der Nacht eingefallen. For's kann man ja schachteln .. unendlich .... aber in Integratoren?



  • Der ganze Code wirkt recht wirr. Was willst du denn überhaupt bezwecken?



  • Kompiliert das?
    Nein.
    Kann man das also machen? Nein.

    Ergibt das irgendeinen Sinn? Schwer zu sagen.

    Du hast doch schon programmiert? Dann weisst Du, dass Du Struktur
    a)in Deine Gedanken und
    b)in Deinen Code bekommen musst.
    Das fehlt doch noch komplett.

    Gestern habe ich Dich in einem Deiner zahlreichen anderen Threads aufgefordert Struktur in Dein Programm zu bringen. Den absolut unzureichenden Spaghetticode, den Du da gezeigt hast faß ich nämlich mit der Beißzange nicht an.

    Zeig doch mal, was in der Richtung passiert ist, anstatt weiter zu frickeln. Das wäre nämlich viel wichtiger als "map-aufruf in map".



  • Marthog schrieb:

    Der ganze Code wirkt recht wirr. Was willst du denn überhaupt bezwecken?

    also, es liegt eine map vor in der es mehrmals dieselben first-Werte gibt.

    Ich will jetzt daß er nach jedem first, all die seconds ausgibt, die zu demselben first bestehen...,

    Weiß eber nicht, bez. vermute, daß das so nicht klappt, weil ich vermute, er kann die first's nicht zuordnen. Ob ich einfach mal ein auto dazwischen schreib, daß er es automatisch macht? 🤡



  • Furble Wurble schrieb:

    Gestern habe ich Dich in einem Deiner zahlreichen anderen Threads aufgefordert Struktur in Dein Programm zu bringen. Den absolut unzureichenden Spaghetticode, den Du da gezeigt hast faß ich nämlich mit der Beißzange nicht an.

    weiß gar nicht, was Strukrur ist, ich kenn den Befehl nicht ... hab ihn auch nicht gefunden beim Googeln oder meinst Du Ohrnung?



  • brak schrieb:

    Furble Wurble schrieb:

    Gestern habe ich Dich in einem Deiner zahlreichen anderen Threads aufgefordert Struktur in Dein Programm zu bringen. Den absolut unzureichenden Spaghetticode, den Du da gezeigt hast faß ich nämlich mit der Beißzange nicht an.

    weiß gar nicht, was Strukrur ist, ich kenn den Befehl nicht ... hab ihn auch nicht gefunden beim Googeln oder meinst Du Ohrnung?

    Damit spielt er auf einen Kampfbegriff aus den 70-er Jahren an.
    http://de.wikipedia.org/wiki/Strukturierte_Programmierung
    Siehe auch http://de.wikipedia.org/wiki/Spaghetticode

    Tatsächlich besteht die Gefahr des Spaghetticodes gar nicht mehr und modernes C++ widerspricht teilweise der Strukturierten Programmierung.

    Ja, Du solltest echt mehr Ohrnung in Deinen Code bringen. Und vor allem vorher in den Plan.



  • Ja, er meint Ordnung. Struktur könnte man auf das struct zurüclführen und das gibt es sehr wohl in C und auch C++.

    Nein, er meint, dass du dein Programmcode mal aufräumen sollst, du sollst ihn lesbar machen.

    Was ist einfacher zu lesen/verstehen, und was sieht rein optisch schöner aus?

    #define o(a,b,c,d) a##f b##f c##f d; a##g b##g c##g d;q--
    #define Z(z)if(*j==z)
    #define c(z,p) Z(z){y;v p##=r;o(b,[q-1]=b,[q] p b,[q]);}
    #define y q+=t;t=0
    #define r w[q]
    #define v w[q-1]
    #define w(a,m,f) Z(a){y;r=m(r);q++;o(b,[q-1] = -b,[q-1]*f(r)+0*b,[0]);}
    #define A(p,w,o) for(p=0;p<w;p++)_(o)
    #define P(a) for(a=Z;a<Z;a++)
    #define _ putchar
    typedef double o;
    typedef char z;
    o A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y, E_, w[20], bf[20], bg[20],x=-1.3/8,p,d,l=0,h=4e-3,f,m;
    z e[17] = "FKE<<gMAQUDIYO9\"=", *k, *j; o g(o p, o d){int q =-1,t=0;j=k;while( *j ){c(45,-);Z(100){y;q++;r=v;q[bf]=bf[q-1];q[bg]=bg[q-1];}Z(42)
         {y;v*=r;o(b,[q-1]=r*b,[q-1] + v*b,[q]);}Z(44){t=0;q++;}Z(116){f=v;v=r;r=f;f=bf[q];q[bf]=bf[q-1];bf[q-1]=f;f=q[bg];bg[q]=(q-1)[bg];bg[q-1]=f;
    
          }c(43,+);Z(47){y;v/=r;              o(b,[q-1]=b,[q-1]/r-v/                (r*r)*b,[q]);}Z(121){y;q++                        ;r=d; bf[ q]=0;bg[q]=1;}
          Z(94){y;f=v;v=pow(v,r)              ;o(b,[q-1]=r*b,[q-1]*                 pow(f,r-1)+0*b,[q]);}w(115                        ,sin,cos);w(99,cos,sin);
          Z(120){y;q++;r=p;bf[q]              =1;bg[q]=0;}if(*j>=48                 &&*j<58){q++;t=1;r=*j-48 ;                        bf[q] = 0;(q--)[bg] = 0;
                                 }j++;}H=bf[0]                                                                ;K= bg[ 0]; return w[0];}
                                 void s(){int                                                                 e=0;X=Q*8;f=g (Y*8, L*8 )
                                 ;e=(f-X<0)?1:                                                                -1;l=0;while((l+=h)<8)  {
          V=Y*8+l*R;W=L* 8+l*D;X=             Q*8+l*U;f=g(V,W);if((f                                          -X)*e>0){if(V>-1&&V<1&&W>                   
          -1&&W<1){p=V;d=W;return            ;}else e/=-1;}}p=d=-10                                           ;}int main(int argc, z **
          argv){int c, f;z b[2],Z            ;S=0,C=1;k=argv[1];Z =                                           atoi(argv[2])>>1;b[1]=Z*2
    
          &255;b[0]=Z>> 9;J= 3.1415/Z;A(f,6,f[e]^f+1);while(--f>1)_(
          (f%2)[b]);_(246);A(c,384,c/3%2?c/6<<2:0);_(_(0));_(_((_(33)
          <<3)-9)/23);for(f+=5;f < c/22 ; f++) _(e[f] ^ f - 3);for(;f
                                               > c/29;f--)_(f>15?2*f-
                                               31:c);_(0);for(f=0;f<=
                                               Z*2 ; f++){N = S;E_=1-
                            J*J/2;T=J*(1-J*J/6);
                            S=S*E_+C*T;C=C*E_-N*
                            T;A=-(C*C-S*S);P=-A*
         C;E=A*S;G=S*C*2;I=-
         G*S;F=G*C;_((_(e[10
         ]/2-1)<<3)-18);for(
         c=-1;c<5;c++)_((c+1)%2?0:-2*c*c+3*c+9);_(44);A(c,9,c&4?(1-c%2
         )[b]:0);_(7);for(B=-Z ; B<Z ; B++){_(Z+2);for(O=-Z;O<Z;O++){Y
         = (E - P*B/Z - G*O/Z)*x;L = (I - F*B/Z - A*O/Z)*x;Q = (-C +S*
    
         B/Z)*x;R = - Y + E; D =-L+I; U =-Q-C;s();3[w] = sqrt(R*R + D*D + U*U);m=p==-10?1:(4[w]=sqrt(H*H+K*K+1)*w[3],H/=-4[w],K/=-4[w],
         fabs(H*R + K*D + U/4[w])*exp(-l*l/2) );_((z)(m * 63)*2 + ((z)((p+1)*6) % 2 + (z)((d+1)*6) % 2 == 1 ? 1 : 0));O?l:(_(128),_(B!=
         Z-1 ? Z : Z+1));}_(128);}_(_(129)-129);}_(0x3b);}
    

    (Quelle)

    oder das hier:

    // constructing maps
    #include <iostream>
    #include <map>
    
    bool fncomp (char lhs, char rhs) {return lhs<rhs;}
    
    struct classcomp {
      bool operator() (const char& lhs, const char& rhs) const
      {return lhs<rhs;}
    };
    
    int main ()
    {
      std::map<char,int> first;
    
      first['a']=10;
      first['b']=30;
      first['c']=50;
      first['d']=70;
    
      std::map<char,int> second (first.begin(),first.end());
    
      std::map<char,int> third (second);
    
      std::map<char,int,classcomp> fourth;                 // class as Compare
    
      bool(*fn_pt)(char,char) = fncomp;
      std::map<char,int,bool(*)(char,char)> fifth (fn_pt); // function pointer as Compare
    
      return 0;
    }
    

    (Quelle)


Log in to reply