Dòng:
return pascal(k, n - 1) + pascal(k - 1, n - 1);
Ở dòng này ví dụ j=3, n=4 thì 2 cái hàm pascal đó sẽ là (2;3) và (3;3) thì lấy giá trị Ở VỊ TRÍ j2 và j3 ở dòng 3 cộng với nhau thì sao nó lại ra giá trị số nguyên ạ? đây là 2 hàm pascal () + vs nhau chứ đâu phải là 2 giá trị Ở VỊ TRÍ j2 và j3 cộng vs nhau đâu mà nó ra bằng 3 ạ. Em nghĩ thế, Mọi người giải thích với ạ.
Em cảm ơn!.
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int pascal(int k, int n) {
if (k == 0 || k == n) {
return 1;
}
else {
return pascal(k, n - 1) + pascal(k - 1, n - 1);
}
}
int main() {
int n;
cout << "Nhap n:";
cin >> n;
for (size_t i = 0; i <= n; i++)
{
for (size_t k = 0; k <= i; k++)
{
cout << setw(6) << pascal(k, i);
}
cout << endl;
}
return 0;
}