Bắt đầu ngayBắt đầu miễn phí

Bạn có thể xuống thấp đến mức nào?

Mọi thứ đang tiến triển rất ổn! Bạn đã có đoạn mã tính vị trí của mình trong tòa Empire State Building sau 100 lần tung xúc xắc. Tuy nhiên, có một điều chúng ta chưa tính đến — bạn không thể xuống dưới 0!

Một cách điển hình để giải những bài như thế này là dùng max(). Nếu bạn truyền vào max() hai đối số, giá trị lớn hơn sẽ được trả về. Ví dụ, để đảm bảo biến x không bao giờ xuống dưới 10 khi bạn giảm nó, bạn có thể dùng:

x = max(10, x - 1)

Bài tập này là một phần của khóa học

Python nâng cao

Xem khóa học

Hướng dẫn bài tập

  • Dùng max() theo cách tương tự để đảm bảo step không xuống dưới 0 nếu dice <= 2.
  • Nhấn "Gửi câu trả lời" và kiểm tra nội dung của random_walk.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# NumPy is imported, seed is set

# Initialize random_walk
random_walk = [0]

for x in range(100) :
    step = random_walk[-1]
    dice = np.random.randint(1,7)

    if dice <= 2:
        # Replace below: use max to make sure step can't go below 0
        step = step - 1
    elif dice <= 5:
        step = step + 1
    else:
        step = step + np.random.randint(1,7)

    random_walk.append(step)

print(random_walk)
Chỉnh sửa và Chạy Mã