Tính P(n) = 1.2.3….n trong Python và C++

Để tính tích của dãy số P(n) = 1 * 2 * 3 * … * n trong Python, bạn có thể sử dụng một vòng lặp để tính tích các phần tử trong dãy, đây chính là kĩ thuật nhân dồn. Dưới đây là một ví dụ về cách làm điều này:

Tính P(n) = 1.2.3….n trong Python









def calculate_pn(n):
    product = 1
    for i in range(1, n + 1):
        product *= i
    return product

n = int(input("Nhập giá trị n: "))
result = calculate_pn(n)
print("Kết quả của P(n) là:", result)

Dưới đây là giải thích từng dòng lệnh trong mã Python mà tôi đã cung cấp:

  1. def calculate_pn(n):
    • Đây là định nghĩa một hàm có tên là calculate_pn nhận tham số đầu vào n.
  2. product = 1
    • Khởi tạo một biến product có giá trị ban đầu là 1. Biến này sẽ được sử dụng để tính tích các phần tử trong dãy.
  3. for i in range(1, n + 1):
    • Đây là vòng lặp for sẽ lặp qua các giá trị từ 1 đến n (bao gồm cả n).
    • Biến i sẽ thay đổi qua mỗi vòng lặp và được sử dụng để biểu diễn các phần tử trong dãy.
  4. product *= i
    • Trong mỗi vòng lặp, chúng ta nhân giá trị của i vào biến product.
    • Công thức này biểu diễn tích của các phần tử từ 1 đến n.
  5. return product
    • Sau khi vòng lặp kết thúc, hàm trả về giá trị của biến product – tích của các phần tử trong dãy.
  6. n = int(input("Nhập giá trị n: "))
    • Đọc giá trị của n từ người dùng bằng cách sử dụng hàm input. Hàm input trả về một chuỗi, và int() được sử dụng để chuyển đổi chuỗi thành số nguyên.
  7. result = calculate_pn(n)
    • Gọi hàm calculate_pn với tham số n để tính tích của dãy P(n) dựa trên giá trị n mà người dùng đã nhập.
  8. print("Kết quả của P(n) là:", result)
    • In ra kết quả của tích P(n) đã tính được từ hàm calculate_pn.

Tính P(n) = 1.2.3….n trong C++




















#include <iostream>

long long calculate_pn(int n) {
    long long product = 1;
    for (int i = 1; i <= n; i++) {
        product *= i;
    }
    return product;
}

int main() {
    int n;
    std::cout << "Nhập giá trị n: ";
    std::cin >> n;

    long long result = calculate_pn(n);
    std::cout << "Kết quả của P(n) là: " << result << std::endl;

    return 0;
}

Dưới đây là giải thích từng phần của mã:

  1. #include <iostream>
    • Đây là chỉ thị tiền xử lý (preprocessor directive) để bao gồm thư viện iostream, cho phép sử dụng đầu vào và đầu ra chuẩn của C++.
  2. long long calculate_pn(int n) { ... }
    • Định nghĩa hàm calculate_pn để tính tích của dãy P(n). Hàm này nhận một tham số nguyên n và trả về một số nguyên lớn (long long).
  3. for (int i = 1; i <= n; i++) { ... }
    • Sử dụng vòng lặp for để lặp qua các giá trị từ 1 đến n (bao gồm cả n).
  4. product *= i;
    • Trong mỗi vòng lặp, chúng ta nhân giá trị của i vào biến product.
    • Công thức này biểu diễn tích của các phần tử từ 1 đến n.
  5. int main() { ... }
    • Hàm main là hàm chính của chương trình.
  6. std::cout << "Nhập giá trị n: ";
    • Sử dụng std::cout để in ra thông báo yêu cầu người dùng nhập giá trị n.
  7. std::cin >> n;
    • Sử dụng std::cin để đọc giá trị của n từ người dùng.
  8. std::cout << "Kết quả của P(n) là: " << result << std::endl;
    • Sử dụng std::cout để in ra kết quả của tích P(n).
  9. return 0;
    • Hàm main trả về 0 để chỉ ra rằng chương trình đã thực hiện xong mà không gặp lỗi.
Read:   Kỹ thuật cộng dồn, nhân dồn - Minh họa bằng Python và C++

 

Hình đại diện của người dùng

admin

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *