am acest program:
cin >>a>>b;
S=0;
for(int n=a;n<=b;n++)
{ if(n%3==0)
S=S-n;
else
S=S+n;
}
cout <
Isi da seama cineva ce face acest program?
Inafara de faptul ca scade numerele divizibile cu 3 si le aduna pe restul din intervalul [a,b].
Cerinta propriu zisa era sa scriu programul fara structuri repetitive (while, for, do while).
de ex pt a=8, b=17 e raspunsul 53
Multumesc!
Utilizator anonim:
Ți-am fost de ajutor? Să fac un răspuns mai complet?
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
Calculeaza diferenta dintre suma numerelor intregi nedivizibile cu 3 si suma numerelor intregi divizibile cu 3 - numere incluse in intervalul [a;b].
Se observa ca: (3k+1)+(3k+2)-(3k+3)=3k.
a poate fi de tipul: 3k, 3k+1,3k+2 (3 cazuri) si
b poate fi de tipul: 3p, 3p+1, 3p+2 (3 cazuri)
Deci poti rezolva totul cu if-uri imbricate (sau switch) - sunt 3x3=9 cazuri.
Alte întrebări interesante
Fizică,
8 ani în urmă
Franceza,
8 ani în urmă
Geografie,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Engleza,
9 ani în urmă
Matematică,
9 ani în urmă