Informatică, întrebare adresată de The4Ever, 9 ani în urmă

for(j=1;j<=n;j++) {
sm=0;
for(i=1;i<=2*m;i++)
if(j==v[i]) sm++;
}

Cum fac sa retina sm(sau sa afiseze) de fiecare data cand al doilea for se termina?

Răspunsuri la întrebare

Răspuns de Emil1234
0
Nu este foarte greu ceea ce doresti sa faci.
De exemplu, pentru a afisa sm dupa al doilea for trebuie sa adaugi urmatoarea instructiune:

for(j=1;j<=n;j++){
  sm = 0;
  for(i=1;i<=2*m;i++)
    if(j==v[i])
         sm++;
  cout<<sm<<" ";
}

Daca doresti sa il retina si nu sa il afiseze, ai putea destul de usor sa mai iei o variabila, sa ii zicem copy, in care poti retine sm-ul.
Mai exact, in loc de cout vei avea copy = sm;

Succes!

The4Ever: Multumesc mult! Eu am mai pus un if(i==2*m) cout<<sm<<" "; dar facea prea multe operatii.
Emil1234: Da, nu e necesar sa mai pui un if, pt ca atunci cand va iesi din for va afisa sm-ul. Pt ca asa te-ai intreba de prea multe ori daca i==2*m :D
Alte întrebări interesante