Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tìm N trung bình cộng giữa A và B bằng C++


Giả sử chúng ta có ba số nguyên A, B và N. Chúng ta phải tìm N trung bình cộng giữa A và B. Nếu A = 20, B = 32, và N = 5, thì kết quả sẽ là 22, 24, 26, 28, 30.

Nhiệm vụ đơn giản là chúng ta phải chèn N phần tử vào cấp số cộng (Arithmetic Progression) nơi A và B là số hạng đầu và cuối của dãy đó. Giả sử A1, A2, .... An là n trung bình cộng. Vậy dãy sẽ là A, A1, A2, .... An, B. Vì vậy B là số hạng thứ (N + 2) của dãy. Vì vậy chúng ta có thể dùng các công thức sau:

$$B=A+\lgroup N+2-1\rgroup*d$$

$$B-A=\lgroup N+2-1\rgroup*d$$

$$d=\frac{B-A}{\lgroup N+2-1\rgroup}$$

Ví dụ

#include<iostream> using namespace std; void showMeans(int A, int B, int N) {    float d = (float)(B - A) / (N + 1);    for (int i = 1; i <= N; i++)       cout << (A + i * d) <<" "; } int main() {    int A = 20, B = 40, N = 5;    showMeans(A, B, N); }

Kết quả

23.3333 26.6667 30 33.3333 36.6667