2. Se dau trei numere naturale a, b, c, mai mici decât 10. Să se calculeze n = ab + ca (ab și ca cu bară deasupra) şi pentru n, astfel calculat, să se determine suma dintre ultima cifră a sa şi numărul format din ultimele două cifre ale lui n.
Trebuie făcut în C++, dar nu mă prea pricep la informatică :))
Răspunsuri la întrebare
Răspuns:
int main() // functia principala a programului
{
int a, b, c; //declaram variabilele intregi a, b, c
cout << "a= "; cin >> a;
cout << "b= "; cin >> b;
cout << "c= "; cin >> c;
int ab = a * 10 + b; // concatenam cifrele a si b pentru a forma ab
int ca = c * 10 + a; // la fel si pentru ca
int n = ab + ca; // calcularea lui n
int x = n % 10; // determinam ultima cifre a lui n
int y = n % 100; // determinarea ultimelor doua cifre ale lui n
int S = x + y; // calculam suma S
cout << "n = " << n << endl; //afisam valoarea lui n
cout << "S= " << S << endl; // afisam suma S
return 0; //sfarsitul programului
}
Explicație:
Cand concatenam, ne referim la faptul ca noi vom inmulti nr cu 10 pentru ca sa putem aduna urmatorul nr cu ea. De ex, daca avem pentru ab, si valorile acestora sunt 1 si 2, noi inmultim pe 1 cu 10 si devinde 10, atunci se aduna cu 2 si devine automat 12. La fel se face si pentru ca.
Cand vrem sa luam ultima sau penultima cifra a unui nr, in cazul acesta avem ab = 12 si luam pe ca = 34, atunci n = 46. Vom declara o nou variabila intrega ca sa ii putem acorda valoarea lui n % 10 si pentru cealalta variabila tot intrega ii dam valoarea n % 100. De ce? Pentru ca daca facem operatia aia, numarul devine cu virgula si poate ai observat ca am scris intreg cu bold, e din cauza ca e foarte esential sa declaram pe x si y (variabilele care primesc valoarea lui n) ca nr intregi pentru a nu afisa numere cu virgula. Asa putem determina ultima si ultimele doua cifre ale lui n. Daca erau variabile de tip float, atunci se afisau cu virgula si nu mai mergea.
Daca ai alte intrebari sa imi spui.