Học Python - Bài 58 Tính trung bình cộng các số chính phương trong mảng
DANH SÁCH TÓM TẮT:
Giới Thiệu
Trong bài viết này, chúng ta sẽ viết chương trình Python để tính trung bình cộng của các số chính phương trong một mảng số nguyên.
Cách Thực Hiện
Chương Trình Python
import math # Hàm kiểm tra số chính phương def la_so_chinh_phuong(n): can = int(math.sqrt(n)) return can * can == n # Hàm tính trung bình cộng các số chính phương trong mảng def tinh_tb_so_chinh_phuong(mang): tong = 0 dem = 0 for so in mang: if la_so_chinh_phuong(so): tong += so dem += 1 return tong / dem if dem > 0 else 0 # Nhập số lượng phần tử của mảng n = int(input("Nhập số phần tử của mảng: ")) mang = [int(input(f"Nhập phần tử thứ {i+1}: ")) for i in range(n)] # Tính trung bình cộng ket_qua = tinh_tb_so_chinh_phuong(mang) print(f"Trung bình cộng các số chính phương trong mảng là: {ket_qua}")
import math def la_so_chinh_phuong(n): can = int(math.sqrt(n)) return can * can == n # Hàm tính trung bình cộng các số chính phương trong mảng (cách tối ưu) def tinh_tb_so_chinh_phuong_toi_uu(mang): so_chinh_phuong = [so for so in mang if la_so_chinh_phuong(so)] return sum(so_chinh_phuong) / len(so_chinh_phuong) if so_chinh_phuong else 0 # Nhập số lượng phần tử của mảng n = int(input("Nhập số phần tử của mảng: ")) mang = [int(input(f"Nhập phần tử thứ {i+1}: ")) for i in range(n)] # Tính trung bình cộng ket_qua = tinh_tb_so_chinh_phuong_toi_uu(mang) print(f"Trung bình cộng các số chính phương trong mảng là: {ket_qua}")
So Sánh Hai Cách
Phương pháp | Độ phức tạp | Ưu điểm | Nhược điểm |
Dùng vòng lặp | O(n) | Dễ hiểu, trực quan | Mã dài hơn |
Dùng list comprehension | O(n) | Ngắn gọn, tối ưu | Cần hiểu list comprehension |
Ví Dụ Chạy Chương Trình
Nhập số phần tử của mảng: 6
Nhập phần tử thứ 1: 4
Nhập phần tử thứ 2: 7
Nhập phần tử thứ 3: 9
Nhập phần tử thứ 4: 16
Nhập phần tử thứ 5: 5
Nhập phần tử thứ 6: 25
Trung bình cộng các số chính phương trong mảng là: 13.5
Kết Luận
Bài viết đã hướng dẫn cách tính trung bình cộng các số chính phương trong mảng bằng hai phương pháp:
Hy vọng bài viết hữu ích cho bạn!
Khóa học Python online từ cơ bản đến nâng cao
2 Đề thi học sinh giỏi Tin học THCS cấp tỉnh Tiền Giang có đáp án SỞ…
1 Đề Thi Học Sinh Giỏi Tin học THCS cấp Tỉnh Tiền Giang có đáp…
Phần 1: Các bài tập dễ và cơ bản làm được các bài này các…
100 triệu là mức lương của lập trình Python vì sao? 1. Vì sao Python…
Bài 71: Đổi tất cả ký tự trong một chuỗi thành ký tự thường bằng…
Bài 26 - Tính Tổng Những Số Chia Hết Cho 3 và 5 bằng Python…
This website uses cookies.