Câu hỏi:

11/07/2024 567

Viết thêm một chương trình cho công việc bổ sung 4 như sau: Cần in ra danh sách 1⁄3 số mặt hàng có doanh số thấp nhất trong ngày.

Quảng cáo

Trả lời:

verified
Giải bởi Vietjack

def in_danh_sach_1_3_so_mat_hang_thap_nhat(s,p):

    # Sắp xếp danh sách mặt hàng theo doanh số tăng dần

    p.sort(key=lambda x: x[s])

    # Tính số lượng mặt hàng cần in (1/3 tổng số mặt hàng)

    so_luong_can_in = len(p) // 3

    # In ra danh sách 1/3 số mặt hàng có doanh số thấp nhất

    print("Danh sách 1/3 số mặt hàng có doanh số thấp nhất:")

    for i in range(so_luong_can_in):

        print(f"{i+1}. Mặt hàng {p[i][0]} - Doanh s: {p[i][p]}")

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Lời giải

Chương trình sử dụng thuật toán tìm kiếm nhị phân để tìm mặt hàng có doanh số nhỏ hơn K nhưng gần với K nhất trong danh sách mặt hàng đã được sắp xếp theo thứ tự tăng dần của doanh số.

def find_nearest_item(arr, K):

    # Sắp xếp danh sách mặt hàng theo thứ tự tăng dần của doanh số

    arr.sort()

    low, high = 0, len(arr) - 1

    result = None

    while low <= high:

        mid = (low + high) // 2 # Tính giá trị trung bình mid của low và high

        if arr[mid] < K:

            # Nếu giá trị doanh số của mặt hàng ở vị trí mid nhỏ hơn K

            # Đặt low = mid + 1 để tìm phần tử lớn hơn K

            low = mid + 1

        elif arr[mid] > K:

            # Nếu giá trị doanh số của mặt hàng ở vị trí mid lớn hơn K

            # Đặt high = mid - 1 để tìm phần tử nhỏ hơn K

            high = mid – 1

else:

            # Nếu giá trị doanh số của mặt hàng ở vị trí mid bằng K

            # Trả về mid làm kết quả

            result = mid

            break

        # Cập nhật giá trị gần K nhất

        if result is None or abs(arr[mid] - K) < abs(arr[result] - K):

            result = mid

    return arr[result]

# Example usage

arr = [10, 20, 30, 40, 50, 60, 70, 80, 90]

K = 45

nearest_item = find_nearest_item(arr, K)

print("Mặt hàng có doanh số nhỏ hơn K nhưng gần với K nhất là:", nearest_item)

Lời giải

Chương trình trên được thiết kế có 3 mô đun

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP