Se da un numar natural n . Afisati in ordine decrescatoare primele n numere naturale impare.
int main()
{
int n;
cin >> n;
for(int i=2*n-1; i > 0; i-=2) cout << i << ' ';
return 0;
}
Nu unteleg de ce a inmultit cu 2*n-1 si acolo la incrementare . DACA POATE SA MI EXPLICE CINEVA
Răspunsuri la întrebare
Răspuns de
0
Explicație:
Expresia are scopul în primul rând de a ne asigura că primul număr de la care începem este impar, oricare ar fi n număr natural, prin înmulțirea cu 2 și scăderea / adunarea lui 1, rezultatul va fi un număr impar întotdeauna.
Fiecare număr impar este separat de cel precedent printr-un interval de 2 numere (de aici vine i -= 2, acelasi lucru ca i = i - 2), iar programul trebuie să afișeze doar numerele impare, primele n, începând de la și mergând înapoi din 2 în 2 până la .
De exemplu, dacă n = 3, for-ul începe de la 2*3-1 = 5 și parcurge elementele impare până la 1, afișându-se 5 3 1, în această ordine.
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă