Trang chủ > Lớp 8 > Giải BT Tin học 8 > Bài 1: Máy tính và chương trình máy tính - Giải BT Tin học 8

Bài 1: Máy tính và chương trình máy tính - Giải BT Tin học 8

Bài 1 (trang 9 sgk Tin học lớp 8): Khi soạn thảo văn bản trên máy tính và yêu cầu chương trình tìm kiếm một cụm từ trong văn bản và thay thế bằng một cụm từ khác, thực chất ta đã yêu cầu máy tính thực hiên những lệnh gì? Có thể thay đổi thứ tự những lệnh đó mà kết quả vẫn không thay đổi được không?

Bài giải:

- Ở đây, chúng ta có 2 công việc cần thực hiện, đó là:

+ Công việc 1: Tìm kiếm một cụm từ trong văn bản:

+ Công việc 2: Thay thế bằng một cụm từ khác.

- Để thực hiện được 2 công việc này, máy tính sẽ cần đưa ra một loạt các mệnh lệnh như sau:

1. Sao chép cụm từ cần tìm kiếm (gọi là cụm từ 1) vào bộ nhớ của máy tính.

2. Tìm kiếm cụm từ 1 đã sao chép.

3. Xóa cụm từ 1 đã tìm kiếm được.

4. Sao chép cụm từ cần thay thế (gọi là cụm từ 2) vào bố nhớ của máy tính.

5. Từ vị trí đã xóa cụm từ 1, sao chép cụm từ 2 vào.

- Không thể thay đổi thứ tự những lệnh đó mà kết quả không thay đổi.

Ví dụ: Khi ta đổi lệnh 1 cho lệnh 4. Lúc đó máy sẽ thực hiện việc sao chép cụm từ 2 vào bộ nhớ, do bản chất của cụm từ 1 và 2 đều là dữ liệu nên lúc đó máy tính sẽ coi cụm từ 2 như cụm từ 1 và bắt đầu thực hiện lệnh đối với cụm từ 2. Do vậy, nếu ta thay đổi lệnh 1 cho lệnh 4 thì việc tìm kiếm và thay thế cụm từ 1 thành cụm từ 2 sẽ trở thành chương trình tìm kiếm và thay thế cụm từ 2 thành cụm từ 1. Khi đó, kết quả sẽ bị thay đổi.

Bài 2 (trang 9 sgk Tin học lớp 8): Trong ví dụ về rô-bốt, nếu thay đổi thứ tự của lệnh 1 và lệnh 2 trong chương trình, rô-bốt có thực hiện được công việc nhặt rác không? Hãy xác định vị trí mới của rô-bốt sau khi thực hiện xong chương trình với thay đổi trên. Em hãy bổ sung hai lệnh để đưa rô-bôt về vị trí ban đầu?

Bài giải:

- Nếu thay đổi thứ tự của lệnh 1 và lệnh 2 trong chương trình, rô-bốt sẽ không thực hiện được công việc nhặt rác. Lúc này, rô-bốt sẽ thực hiện xong lệnh và đến vị trí mới nhưng lại không có rác để nhặt.

- Vị trí mới của rô-bôt nếu thực hiện xong chương trình với thay đổi trên:

Bài 2 trang 9 sgk Tin học 8 ảnh 1

- Ở ví trí mới, muốn đưa rô-bốt về vị trí ban đầu ta có rất nhiều cách thực hiện các câu lệnh khác nhau, và dưới đây là một cách đơn giản để minh họa:

+ Bước 1: Lùi 3 bước.

+ Bước 2: Quay phải.

Bài 3 (trang 9 sgk Tin học lớp 8): Hãy cho biết lí do cần phải viết chương trình để điều khiển máy tính.

Bài giải:

Lí do cần phải viết chương trình để điều khiển máy tính:

- Trong thực tế, các công việc của con người muốn máy tính thực hiện rất đa dạng và phức tạp. Một lệnh đơn giản không đủ để chỉ dẫn cho máy tính hoàn thành công việc. Do đó, việc viết nhiều lệnh và tập hợp lại trong một chương trình giúp con người khai thác triệt để tốc độ máy tính và điều khiển máy tính đơn giản, dễ dàng.

- Khi thực hiện chương trình, máy tính sẽ thực hiện tuần tự các lệnh có trong chương trình, nghĩa là thực hiện xong một lệnh sẽ thực hiện lệnh tiếp theo, từ lệnh đầu tiên đến lệnh cuối cùng.

Bài 4 (trang 9 sgk Tin học lớp 8): Vì sao người ta phải tạo ra các ngôn ngữ lập trình trong khi có thể điều khiển máy tính bằng ngôn ngữ máy.

Bài giải:

- Đầu tiên chúng ta phải hiểu rằng, ngôn ngữ máy là các dãy bit, mỗi dãy bit chỉ bao gồm các số 0 và 1. Ví dụ: 00111010

- Chúng ta có thể thấy việc viết chương trình bằng ngôn ngữ máy, chỉ gồm những số 0 và 1 rất khó khăn và mất nhiều thời gian, công sức, cực kì khó nhớ và khó sử dụng. Do đó, để thuận tiện hơn, đơn giản, dễ hiểu hơn, các ngôn ngữ lập trình được ra đời nhằm phục vụ những mục đích đó.

Bài 5 (trang 9 sgk Tin học lớp 8): Chương trình dịch là gì?

Bài giải:

- Do các ngôn ngữ lập trình được tạo ra nhằm mục đích dễ hiểu hơn cho con người, nhưng máy tính lại không thể hiểu được ngôn ngữ đó. Do đó, chương trình còn cần được chuyển đổi sang ngôn ngữ máy bằng một chương trình dịch tương ứng.

Tìm hiểu mở rộng (trang 9 sgk Tin học lớp 8): Có nhiều ngôn ngữ lập trình khác nhau, có thể kể tên một số ngôn ngữ phổ biến hiện nay như C, Java, Basic, Pascal… Em có thể kể tên một số ngôn ngữ lập trình khác không?

Bài giải:

- Hiện nay có rất nhiều ngôn ngữ lập trình, trong đó các ngôn ngữ phổ biến hiện nay là: Python, PHP, Go, Java Script, Visual Basic. NET, Ruby on Rails, Swift, C#, Scala… Việc học được nhiều ngôn ngữ lập trình sẽ là một lợi thế, tuy nhiên bạn cần chú trọng hơn cho việc học thuật toán cũng như xác định được công việc tương lai mà mình dự định, từ đó tập trung vào một số ngôn ngữ lập trình cần thiết nhất.