Al N-lea termen dintr-o progresie geometrică
Această lecție este despre cum se calculează termenul general al unei progresii geometrice în C++.
Ne propunem să aflăm al n
-lea termen al progresiei geometrice cu primul
termen a
și rația r
.
Explicarea algoritmului
Știm că o progresie geometrică este de forma a, a * r, a * r^2, a * r^3, …
.
Practic, termenul i
(i ≥ 1
) este egal cu a * r^(i - 1)
, unde a^b
reprezintă operația a
la puterea b
.
Așadar, pentru a găsi termenul n al unei progresii aritmetice, vom calcula `a
- r^(n - 1)`.
Rezolvare în C++
Să rezolvăm problema în C++. Asumăm că n ≥ 1
.
#include <iostream>
using namespace std;
int ridicareLaPutere(int baza, int exponent) {
//Returnează baza la puterea exponent. Se poate folosi ridicarea la putere în timp logaritmic
int r = 1;
for(int i = 1; i <= exponent; i++) {
r = r * baza;
}
return r;
}
int progresieGeom(int n, int primulTermen, int ratie) {
//Folosim formula g(n) = primulTermen * ratie^(n - 1)
return primulTermen * ridicareLaPutere(ratie, n - 1);
}
int main()
{
int n, a, r;
cin >> n >> a >> r;
cout << "Al " << n << "-lea termen al progresiei geometrice este " << progresieGeom(n, a, r);
return 0;
}
DS
Autorul acestei lecții
Dominic Satnoianu
Această lecție a fost redactată de către Dominic Satnoianu.
© 2021 – 2025 Aspire Education Labs SRL. Toate drepturile rezervate.
Așa cum este specificat și în termeni și condiții, conținutul acestei pagini este protejat de legea drepturilor de autor și este interzisă copierea sau modificarea acestuia fără acordul scris al autorilor.
Încălcarea drepturilor de autor este o infracțiune și se pedepsește conform legii.
Comentarii 0