Giải bài 15: Thực hành với kiểu dữ liệu danh sách - Sách tin học 10 cánh diều. Phần đáp án chuẩn, hướng dẫn giải chi tiết cho từng bài tập có trong chương trình học của sách giáo khoa. Hi vọng, các em học sinh hiểu và nắm vững kiến thức bài học..
Bài 1. Cập nhật danh sách
Viết chương trình nhập vào từ bàn phím một danh sách các số nguyên, sau đó thực hiện:
- Thay thế các phần tử âm bằng -1, phần tử dương bằng 1, giữ nguyên các phần từ giá trị 0.
- Đưa ra màn hình danh sách nhận được.
Trả lời:
kết quả:
B. Bài tập và hướng dẫn giải
Bài 2. Các số đặc biệt của dãy số
Viết chương trình nhập vào từ bàn phím danh sách số nguyên a; đếm và đưa ra màn hình số lượng các phần tử lớn hơn phần tử đứng trước và phần tử đứng sau đó.
Bài 3. Trò chơi với các chiếc giày
Có n đôi giày cùng loại chỉ khác nhau về kích thước cỡ được xếp thành một hàng theo thứ tự ngẫu nhiên. Chủ trò bí mật rút một chiếc giày và giấu đi, sau đó yêu cầu người chơi cho biết chiếc giày được giấu là chiếc giày trái hay phải và có số là bao nhiêu.
Hà My muốn viết một chương trình nhập vào một dãy, mỗi số trong dãy mô tả một chiếc giày, số có giá trị âm cho biết đó là giày trái, số có giá trị dương cho biết đó là giày phải, giá trị tuyệt đối của số là kích cỡ của giày. Chương trình sẽ cho biết chiếc giày nào còn thiếu trong dãy.
Cách làm thông thường để tìm ra chiếc giày còn thiếu là đi ghép các đôi giày , tuy nhiên cách làm nay sẽ mất nhiều thời gian. Một cách làm đơn giản là dựa trên nhận xét: Nếu dãy không thiếu chiếc giày nào thì tổng sẽ bằng 0, nên có thể xác định chiếc giày còn thiếu khi biết tổng các số trong dãy. Hình 4 là chương trình mà Hà My viết theo cách làm trên, tuy nhiên chương trình vẫn còn có lỗi. Em hãy giúp Hà My sửa các lỗi để nhận được chương trình chạy được và cho ra kết quả đúng.
VẬN DỤNG
Quản lí tiền điện
Viết chương trình nhập vào 12 số nguyên dương tương ứng là tiền điện của 12 tháng trong năm vừa rồi của nhà em, đưa ra màn hình các thông tin sau:
- Tổng số tiền điện của cả năm và tiền điện trung bình theo tháng.
- Liệt kê các tháng có số tiền điện nhiều hơn tiền điện trung bình theo tháng.