Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

em làm bài này toàn bị lỗi ạ

2 năm trước 455 lượt xem 4 bình luận

1. Viết chương trình python cho phép nhập vào 1 dãy số từ bàn phím, cách nhau bởi dấu
phẩy.
Hãy tính tổng của các số chẵn, tính tích của các số lẻ và tính trung bình cộng của dẫy số

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
hieutapcode đã bình luận 2 năm trước

class HCN:
def __init__(self, chieu_dai, chieu_rong):
self.chieu_dai = chieu_dai
self.chieu_rong = chieu_rong

def dien_tich(self):
return self.chieu_dai * self.chieu_rong

def chu_vi(self):
return (self.chieu_dai + self.chieu_rong) * 2

def to_string(self):
print(f"chieu dai: {self.chieu_dai} \n"
f"chieu rong: {self.chieu_rong} \n"
f"chu vi: {self.chu_vi()} \n"
f"dien tich: {self.dien_tich()}")

def write_to_string(self):
open_file = open("hcn.txt", "r")
open_file.write(self.to_string())
open_file.close()

chieu_dai = int(input("cd: "))
chieu_rong = int(input("cr: "))
chu_nhat = HCN(chieu_dai, chieu_rong)
chu_nhat.to_string()
chu_nhat.write_to_string()

 

lỗi em gặp ạ : open_file.write(self.to_string())
TypeError: write() argument must be str, not None

mong mng fix giúp em

Kteam SuperAdmin đã bình luận 2 năm trước

Bạn nêu lỗi lên mọi người sẽ dễ hỗ trợ hơn và cũng sát hơn với vấn đề của bạn đang gặp

Hieu Dang đã bình luận 2 năm trước
input_num_arr = input("Nhap day so cach nhau boi dau phay: ")

# Chuyển string nhập vào thành mảng các số nguyên (int)
num_arr = [int(i) for i in input_num_arr.split(',')]

# Lọc các số chẵn
even_num = [n for n in num_arr if n % 2 == 0]

# Lọc các số lẻ
old_num = [n for n in num_arr if n % 2]

print(f"Tổng các số chẵn = {sum(even_num)}")

tich = 1
for i in old_num:
  tich *= i

print(f"Tich các số lẻ = {tich}")

print(f"Trung bình cộng của dãy số = {sum(num_arr)/len(num_arr)}")

 

Câu hỏi mới nhất