15. Bài tập

Bài 1: Thuật toán chuyển đổi tiền tệ

Hãy viết mã giả và vẽ lưu đồ để mô tả thuật toán chuyển đổi từ Đô la Mỹ sang Việt Nam Đồng. Nhập vào giá trị Đô la Mỹ, sau đó hiển thị giá trị Việt Nam Đồng tương ứng. Tỉ giá chuyển đổi là 1/23000. Công thức chuyển đổi:

1 Đô la Mỹ = 23000 Việt Nam đồng

Bài 2: Thuật toán tìm giá trị lớn nhất trong 3 số

Hãy viết mã giả và vẽ lưu đồ để mô tả thuật toán tìm giá trị lớn nhất trong 3 số. Nhập vào 3 số, sau đó thực hiện các phép so sánh lần lượt từng cặp số để tìm ra giá trị lớn nhất trong 3 số đó.

Gợi ý: Chúng ta sẽ cần sử dụng cấu trúc điều kiện.

Bài 3: Thuật toán tìm giá trị lớn nhất trong dãy số

Hãy viết mã giả và vẽ lưu đồ để mô tả thuật toán tìm giá trị lớn nhất trong một loạt các số được nhập vào. Nhập vào số n là số lượng các số, sau đó nhập lần lượt n số và tìm ra giá trị lớn nhất trong đó.

Gợi ý: Chúng ta sẽ cần sử dụng kết hợp cấu trúc lặp và cấu trúc điều kiện.

Bài 4: Thuật toán xếp hạng sinh viên

Hãy viết mã giả và vẽ lưu đồ để mô tả thuật toán xếp hạng sinh viên. Nhập vào điểm thi của sinh viên, hiển thị phân loại sinh viên theo các khoảng:

Điểm thiXếp hạng
Điểm >= 75Loại A
60 <= Điểm < 75Loại B
45 <= Điểm < 60Loại C
35 <= Điểm < 45Loại D
Điểm < 35Loại E

Gợi ý: Chúng ta sẽ cần sử dụng nhiều cấu trúc điều kiện nối tiếp nhau.

16. Bài kiểm tra

Câu 1: Điền từ còn thiếu vào định nghĩa sau:

Lập trình là quá trình tạo ra tập các ……. để …. cho máy tính hoàn thành một …. nào đó.

  1. chỉ dẫn (instruction), ra lệnh, công việc (task)
  2. hướng dẫn, yêu cầu, chương trình
  3. chỉ dẫn (instruction), hướng dẫn, công việc (task)
  4. chỉ dẫn (instruction), ra lệnh, sự kiện

Câu 2: Đâu là các hoạt động trong lập trình?

  1. Viết code
  2. Phân tích
  3. Tìm hiểu yêu cầu
  4. Thiết kế

Câu 3: Phát biểu nào sau đây là SAI về ưu nhược điểm của việc sử dụng mã giả hoặc lưu đồ để mô tả thuật toán?

  1. Sử dụng lưu đồ giúp cho các bên thống nhất về cách sử dụng các ký hiệu và dễ hiểu nhau hơn
  2. Nhược điểm của lưu đồ là có các quy định quá chặt chẽ về từng ký hiệu không phải ai cũng nhớ để sử dụng được
  3. Nhược điểm của mã giả là không có các quy định chặt chẽ dẫn đến tình huống các bên không hiểu được nhau
  4. Mã giả gần với tự nhiên, ai cũng có thể sử dụng được.

Câu 4: Kết luận nào sau đây ĐÚNG khi nói về việc học lập trình

  1. Ngôn ngữ lập trình chính là công cụ để hiện thực hoá tư duy giải quyết vấn đề cho một bài toán cụ thể
  2. Học lập trình thì không chỉ cần học một ngôn ngữ lập trình nào đó mà cần phải học tư duy giải quyết vấn đề
  3. Học lập trình là học một loại ngôn ngữ lập trình để ra lệnh cho máy tính thực hiện 1 yêu cầu nào đó
  4. Học một ngôn ngữ lập trình chúng ta chỉ cần quan tâm đến cú pháp của ngôn ngữ đó

Câu 5: Điền các từ còn thiếu vào phát biểu sau:

Mã giả là cách để mô tả thuật toán bằng …. Thông thường chúng ta sử dụng … để mô tả thuật toán. Mã giả là mã ….. và thông thường cũng không có các quy định chặt chẽ về cú pháp của mã giả.

  1. ngôn ngữ tự nhiên, các từ tiếng Anh, không thực thi được
  2. ngôn ngữ tự nhiên, code, không thực thi được
  3. ngôn ngữ tự nhiên, code, có thể thực thi được
  4. ngôn ngữ máy, các từ của nước bản địa, không thể thực thi được

Câu 6: Lưu đồ giúp chúng ta xem xét lại và gỡ rối chương trình một cách dễ dàng?

  1. True
  2. False

Câu 7: Phát biểu nào sau đây đúng về khái niệm “Thuật toán”?

  1. Thuật toán là tập hợp các bước để đưa ra đáp án cho một bài toán
  2. Thuật toán bao gồm các chỉ thị để giải quyết một vấn đề
  3. Thuật toán bao gồm một số bước để giải quyết một vấn đề
  4. Thuật toán là cách giải một bài toán

Câu 8: Phát biểu nào sai về việc sử dụng các ký hiệu trong flow chart?

  1. Ký hiệu hình chữ nhật đánh dấu các thao tác nhập xuất dữ liệu
  2. Ký hiệu hình eclipse đánh dấu điểm bắt đầu hoặc kết thúc của thuật toán
  3. Ký hiệu hình thoi đánh dấu các bước cần rẽ nhánh
  4. Ký hiệu hình bình hành đánh dấu các bước tính toán

Câu 9: Điền các từ còn thiếu vào phát biểu sau:

Một … cơ bản là việc thực thi tuần tự những câu lệnh đến khi một điều kiện cụ thể nào đó là đúng hay sai

  1. Rẽ nhánh
  2. Khai báo biến
  3. Vòng lặp
  4. Thực thi hàm

Câu 10: Điền các từ còn thiếu vào phát biểu sau:

….lựa chọn một công việc để thực hiện căn cứ vào một điều kiện nào đó.

  1. Biến
  2. Vòng lặp
  3. Hàm
  4. Cấu trúc điều kiện

Đáp án: Câu 1 – a, Câu 2 – a, b, c d, Câu 3 – c, Câu 4 – b, Câu 5 – a, Câu 6 – a, Câu 7 – b, Câu 8 – a, d, Câu 9 – c, Câu 10 – d.

17. Tổng kết

  • Một hệ thống máy tính bao gồm phần cứng, phần mềm và người dùng
  • Phần cứng là những thành phần có thể sờ nắm được tạo nên máy tính
  • Phần mềm được ví như linh hồn của máy tính, không thể sờ nắm được
  • Các công việc cơ bản để tạo ra một phần mềm bao gồm: Thu thập yêu cầu, phân tích, thiết kế, viết mã, kiểm thử, phát hành, bảo trì
  • Ngôn ngữ lập trình là công cụ để giao tiếp với máy tính bằng cách viết ra các chỉ dẫn
  • Có nhiều vai trò khác nhau tham gia vào trong quá trình sản xuất phần mềm, chẳng hạn như: lập trình viên, kiểm thử viên, quản lý dự án, chuyên gia phân tích nghiệp vụ, ScrumMaster, Product Owner…
  • Giải thuật (hay còn gọi là thuật toán) là các bước để xử lý một vấn đề
  • Có nhiều cách để mô tả thuật toán, 2 cách thông dụng đó là dùng mã giả và lưu đồ
  • Mã giả là cách sử dụng các từ ngữ tự nhiên quen thuộc với con người
  • Máy tính không hiểu mã giả, hay nói cách khác, mã giả không thể thực thi được
  • Lưu đồ là cách sử dụng các ký hiệu được quy định trước để mô tả thuật toán
  • Luồng thực thi của mã nguồn là tuyến tính từ trên xuống dưới
  • Có thể thay đổi luồng thực thi của chương trình thông qua các cấu trúc như cấu trúc điều kiện và vòng lặp
  • Cấu trúc điều kiện cho phép lựa chọn thực thi một đoạn mã dựa vào một điều kiện
  • Cấu trúc lặp cho phép thực hiện nhiều lần một đoạn mã nào đó
  • JavaScript là một ngôn ngữ được sử dụng phổ biến trên các giao diện web
  • Ngày nay JavaScript còn có thể sử dụng để tạo các ứng dụng back-end, mobile…
  • IDE (Integrated Development Environment) là thuật ngữ được sử dụng để chỉ đến các công cụ soạn thảo mã nguồn được tích hợp thêm các môi trường và tính năng khác để hỗ trợ cho việc lập trình

>> Xem thêm: TÀI LIỆU LẬP TRÌNH CĂN BẢN – ĐƠN GIẢN, DỄ HỌC!