Tư duy lập trình
Thuật toán, vòng lặp, điều kiện, gỡ lỗi, nhị phân, sắp xếp, tìm kiếm — học không cần máy tính.
10 bài · viết cho học sinh, phụ huynh và thầy cô
Thuật toán là gì: hiểu qua công thức pha một cốc nước chanhThuật toán là dãy bước rõ ràng, làm đúng thứ tự thì ra kết quả mong muốn. Pha nước chanh, gấp áo, chỉ đường đều là thuật toán, học được không cần máy tính.Chia nhỏ vấn đề lớn thành việc vừa sức: cách nghĩ của người lập trìnhChia nhỏ vấn đề là tách việc lớn thành các việc nhỏ, mỗi việc đủ rõ để làm ngay. Học qua dọn phòng, gói bánh chưng, lên kế hoạch dã ngoại và chia để trị.Vòng lặp trong đời thường: từ dấu nhắc lại bản nhạc đến khung dệtVòng lặp là cách bảo làm lại một nhóm bước nhiều lần. Có ba kiểu: lặp đủ số lần, lặp cho tới khi, lặp mãi; kèm lỗi lệch một và hoạt động nhảy theo thẻ lệnh.Câu lệnh nếu–thì: máy móc quanh ta ra quyết định như thế nàoCâu lệnh nếu–thì cho máy chọn việc tuỳ điều kiện đúng hay sai. Vòi nước cảm ứng, cửa tự động, nồi cơm điện đều dùng nó; kèm VÀ, HOẶC, KHÔNG và lỗi hay gặp.Gỡ lỗi như thám tử: cách tìm chỗ sai từng bước khi làm không chạyGỡ lỗi là tìm vì sao một việc không chạy rồi sửa đúng chỗ: tái hiện lỗi, đặt giả thuyết, mỗi lần đổi một thứ. Kèm chuyện con bướm đêm năm 1947 và bài tập tìm lỗi.Mã nhị phân bằng năm tấm thẻ giấy: đếm từ 0 đến 31 như máy tínhNăm tấm thẻ có 1, 2, 4, 8, 16 chấm, mỗi thẻ ngửa là 1, úp là 0, biểu diễn được mọi số từ 0 đến 31. Đó là cách máy tính lưu số, chữ và ảnh bằng bit và byte.Sắp xếp xếp hàng theo chiều cao: bốn cách mà máy tính cũng dùngBốn cách sắp xếp quen thuộc là nổi bọt, chọn, chèn và trộn. Với 8 người cách nào cũng nhanh, nhưng với một triệu con số, chọn đúng cách có thể nhanh hơn rất nhiều lần.Tìm nhanh bằng cách chia đôi: tra từ điển, đoán số và cân đồng xuNhìn vào giữa danh sách đã xếp rồi bỏ nửa không chứa thứ cần tìm, mỗi lần loại một nửa. Vì thế đoán số từ 1 đến 100 chỉ cần nhiều nhất 7 lần, một triệu mục chỉ 20 lần.Biến trong lập trình là gì: hình dung như chiếc hộp có dán nhãnBiến là chiếc hộp có nhãn: nhãn là tên, đồ bên trong là giá trị, thay được bất cứ lúc nào. Hiểu phép gán, kiểu dữ liệu, biến đếm và vì sao đổi hai biến cần biến tạm.Scratch và các công cụ học lập trình cho trẻ: chọn gì theo độ tuổiTrẻ 5–7 tuổi nên bắt đầu bằng hoạt động không máy tính và ScratchJr, từ 8 tuổi hợp với Scratch miễn phí của MIT, từ 12 tuổi có thể sang Python hoặc bo mạch micro:bit.