Giáo án Tin học 8 - Tiết 56-57: Làm việc với dãy số - Trường THCS Trần Phú - Pdf 77

<span class='text_page_counter'>(1)</span>Giáo án Tin học 8. Trường THCS TRẦN PHÚ.. TIẾT 56, 57: LÀM VIỆC VỚI DÃY SỐ I. Mục tiêu: - Học sinh biết được khái niệm mảng một chiều; - Biết cách khai báo mảng, nhập, in, truy cập các phần tử của mảng; - Hiểu thuật toán tìm số lớn nhất, nhỏ nhất của một dãy số. II. Phương pháp: - Đặt vấn đề để học sinh trao đổi và đưa nhận xét. Tận dụng vốn hiểu biết “ một cách tự nhiên của học sinh - Học sinh đọc SGK, quan sát và tổng kết III. Chuẩn bị: - Giáo viên: Phấn màu, sách, chuẩn bị thêm các bài tập minh hoạ (nếu có) - Học sinh: sách, tập, viết. IV. TIẾN TRÌNH DẠY HỌC 1- Kiểm tra bài cũ: … 2- Dạy bài mới: Hoạt động của Thầy. Hoạt động của Nội dung ghi bảng học sinh Hoạt động 1:Dãy số và biến mảng - Giới thiệu về dãy số và biến mảng HS nghe giảng 1. Dãy số và biến mảng: liên quan đến hai nội dung quan trọng: Nhu cầu của biến mảng trong ngôn ngữ lập trình và thuật toán tìm số lớn nhất của một dãy số. Như các em đã biết về “thuật toán tìm số lớn nhất của một dãy số” đã được tìm hiểu ở bài 5 (ví dụ 6). Vì vậy, ta không đề cập đến việc giải quyết nhiệm vụ này ntn. Mục tiêu là Gv dẫn đến nhu cầu cần có biến mảng thông qua ví dụ 1: Viết chương trình nhập điểm kiểm tra của các HS trong một lớp và sau đó in ra Ví dụ 1: (SGK)/ Tr 75 màn hình. + Vì mỗi biến chỉ có thể lưu một giá - HS đọc ví dụ 1 trị duy nhất, để có thể nhập điểm và so sánh chúng, ta cần sử dụng nhiều biến, mỗi biến cho một HS. Trong Pascal ta cần nhiều câu lệnh khai báo - HS lắng nghe, - Khai báo và nhập dữ liệu mỗi câu lệnh và nhập dữ liệu như: Mỗi câu lệnh theo dõi, ghi vở. tương ứng với điểm của một HS: Var Diem_1, Diem_2, Diem_3, … : real; tương ứng với điểm của một HS. + Nếu số HS trong lớp càng nhiều Read (Diem_1) ; Read (Diem_2) ; Read thì đoạn khai báo và đọc dữ liệu (Diem_3) ; … trong chương trình càng dài … rất khó tránh khỏi những nhầm lẫn, sai sót. - Vậy, ta có thể sử dụng quy luật tăng Lop8.net.

<span class='text_page_counter'>(2)</span> Giáo án Tin học 8. Trường THCS TRẦN PHÚ.. hay giảm của “số thứ tự” và một vài câu lệnh lặp để xử lí dữ liệu một cách đơn giản ntn ?  Để giải quyết các vấn đề trên, hầu hết các ngôn ngữ lập trình đều có một kiểu dữ liệu được gọi là kiểu mảng. + Dữ liệu kiểu mảng là gì ?. - Ta có thể sử dụng quy luật tăng hay giảm của “số thứ tự” và một vài câu lệnh lặp để xử lí dữ liệu một cách đơn giản: + Với i = 1 đến 100: Hãy nhập Diem_i; + Với i = 1 đến 100: Hãy so sánh Max với Diem_i; - HS trả lời …. * Nhấn mạnh: Trong bài này, ta chỉ xét các mảng có các phần tử kiểu số nguyên hoặc số thực.. * Dữ liệu kiểu mảng:Là một tập hợp hữu hạn các phần tử có thứ tự + Mọi phần tử đều có cùng một kiểu dữ liệu gọi là kiểu của phần tử. Việc sắp xếp thứ tự thực hiện bằng cách gán cho mỗi phần tử một chỉ số:. + Biến mảng: Là khi khai báo một biến có. kiểu dữ liệu là kiểu mảng. + Giá trị của biến mảng là một mảng. (tức là một dãy số: nguyên - thực có thứ tự) Hoạt động 2:Ví dụ về biến mảng - Cách khai báo biến mảng trong các - HS lắng nghe 2. Ví dụ về biến mảng: ngôn ngữ lập trình có thể khác nhau, trả lời… - Cách khai báo biến mảng trong các ngôn nhưng luôn cần chỉ rõ những gì ? ngữ lập trình có thể khác nhau, nhưng luôn cần chỉ rõ: tên biến mảng, số lượng phần tử, - Cho HS đọc ví dụ, rồi hướng dẫn kiểu dữ liệu chung của các phần tử. cách khai báo trong ngôn ngữ Pascal: Ví dụ: (SGK)/ Tr 76 Var Chieucao : array [1..50] of real; * Cách khai báo mảng trong Pascal: Var Tuoi : array [21..80] of integer; Tên mảng : array [<chỉ số đầu>..<chỉ số => Cách khai báo mảng trong Pascal - HS nêu cách cuối>] of <kiểu dữ liệu >; Trong đó: ntn ? khai báo … + Chỉ số đầu và chỉ số cuối: là 2 số nguyên hoặc biểu thức nguyên (Chỉ số đầu  chỉ số cuối ); + Kiểu dữ liệu: integer hoặc real * Ví dụ 2: (SGK)/ Tr 76. - Từ ví dụ 1, GV dẫn dắt HS cách - HS theo dõi - Khai báo biến mảng Diem như sau: khai báo biến mảng: lắng nghe trả lời: Var Diem : array [1..50] of real; Var Diem : array [1..50] of real; + Biến mảng có 50 phần tử được + Tên biến mảng đánh từ 1 đến 50. Các phần tử được [chỉ số phần tử] “đặt tên” ntn ? như Diem[1],… => Cách khai báo và sử dụng biến + Có thể thực mảng như trên có lợi gì ? hiện các thao tác như gán giá trị, so Lop8.net.

<span class='text_page_counter'>(3)</span> Giáo án Tin học 8. Trường THCS TRẦN PHÚ.. sánh, viết giá trị ra màn hình … với Diem[1], Diem[2], …, Diem[50], - Để thay rất nhiều câu lệnh nhập và in dữ liệu ra màn hình, ta dùng một câu lệnh nào ? ( For …do ) - Để viết giá trị của các phần tử ra màn hình người ta kết hợp giữa For …do với lệnh nào ?. - Dùng một câu lệnh lặp. - Dùng một câu lệnh lặp, có thể thay rất nhiều câu lệnh nhập và in dữ liệu ra màn hình, như: For i:= 1 to 50 do readln ( Diem [ i ] ); - … với lệnh write - Để so sánh điểm của mỗi HS với một giá hoặc writeln trị nào đó, ta cũng chỉ cần một câu lệnh lặp, như: For i:= 1 to 50 do If Diem [ i ] > 8.0 then writeln ( ‘ Gioi ‘ ); - Để giúp tiết kiệm rất nhiều thời - HS nghe và theo gian và công sức viết chương trình, dõi Gv thực hiện. thay vì phải viết 50 câu lệnh khai báo và 50 câu lệnh nhập, ta chỉ cần viết 2 câu lệnh là đủ và kết quả đạt được như nhau. Đưa ra 1 cách khai báo - Để xử lí đồng thời các laọi điểm của từng cho HS rõ. môn học, ta có thể khai báo nhiều mảng: => HS tự khai báo nhiều biến mảng - HS làm theo cho các môn học ntn ? hdẫn của GV. Var DiemToan : array [1..50] of real; Var DiemVan : array [1..50] of real; Var DiemLi : array [1..50] of real; hoặc: Var DiemToan, DiemVan, DiemLi : array [1..50] of real; - Sau khi một mảng đã được khai - … như gán giá - Khi một mảng đã được khai báo, chúng ta báo, chúng ta có thể làm việc với các trị, đọc giá trị và có thể làm việc với các phần tử của nó như: phần tử của nó như làm việc với một thực hiện các tính gán giá trị, đọc giá trị và thực hiện các tính biến thông thường. Vậy làm việc với toán với các giá toán với các giá trị đó. Ví dụ như: A[ 1 ]:= 5; một biến thông thường ntn ? trị đó. A[ 2 ]:= 8; * Lưu ý HS: Sử dụng cấu trúc For hoặc nhập dữ liệu từ bàn phím bằng câu … do phù hợp, dễ hiểu hơn cấu trúc lệnh: For i:= 1 to 5 do readln ( A [ i ] ); While…do vì biết trước số lần lặp. * Củng cố:Làm BT 1, 2/ SGK/ Tr 79 * Dặn dò: Học Bài và làmBTVN: 3, 4/SGK/ Tr 79. -TIẾT 57(tt): Hoạt động 3: Tìm giá trị lớn nhất và nhỏ nhất của dãy số - GV hướng dẫn HS tìm hiểu lại 3. Tìm giá trị lớn nhất và nhỏ nhất của thuật toán tìm giá trị lớn nhất, nhỏ dãy số: nhất của dãy số nguyên ( đã học ở * Thuật toán tìm giá trị lớn nhất ( Max ) của - HS nghe và dãy số nguyên nhập từ bàn phím: Bài 5 ). + GV giải thích về thuật toán tìm giá nhắc lại. Tham Bước 1: Nhập N và dãy A1, … , An; Lop8.net.

<span class='text_page_counter'>(4)</span> Giáo án Tin học 8. Trường THCS TRẦN PHÚ.. trị lớn nhất của dãy số nguyên … Sau đó cho HS nhắc lại. + Cho HS thảo luận, chỉnh sửa thuật toán trên để tìm ra số nhỏ nhất. - GV cho HS đọc ví dụ 3: + Để nhập các số nguyên sẽ được nhập vào, trước hết ta phải làm gì ? + Sau khi khai báo N, biến lưu các số được nhập vào như là các phần tử của một biến mảng A. Ngoài ra, cần khai báo thêm các biến nào nữa ?. gia chỉnh sửa thuật toán trên để tìm ra số nhỏ nhất. - HS đọc ví dụ 3. + HS: …trước hết ta khai báo biến N. + Cần khai báo thêm biến i làm biến đếm cho các lệnh lặp, biến Max và Min để lưu số lớn nhất, nhỏ nhất. - GV: Trình bày phần khai báo - HS theo dõi chương trình …. - GV cho HS đọc phần ghi nhớ.. Bước 2: Max  A1; Bước 3: Với i từ 2 đến N thực hiện: Nếu Max < A1 thì Max  Ai; Bước 4: Đưa ra màn hình giá trị Max rồi kết thúc. Ví dụ 3: (SGK)/ Tr 78.. * Phần khai báo chương trình có thể như sau: Program MaxMin; Uses crt; Var i, n, Max, Min : integer; A : array [1..100] of integer; {Phần thân chương trình sẽ tương tự dưới đây:} Begin Clrscr; Write ( ‘ Hay nhap do dai cua day so, N = ‘); readln (n); Writeln ( Nhap cac phan tu cua day so: m’); For i:= 1 to n do Begin Write ( ‘ a[ , i , ] = ‘); readln (a[ i ] ); End; Max:= a[1]; Min:= a[1]; For i:= 2 to n do Begin if Max < a[ i ] then Max:= a[ i ]; if Min < a[ i ] then Min:= a[ i ]; End; Write ( ‘ So lon nhat la Max = ‘ Max); Write ( ‘ So nho nhat la Min = ‘ Min); readln (n); - 4HS đọc và cả End. lớp nghe đọc, ** GHI NHỚ: (SGK)/ Tr 79. cùng theo dõi. 3- Dặn dò: - Về nhà học bài; - Làm các Câu hỏi và BTcòn lại: sgk/ Tr 79; Lop8.net.

<span class='text_page_counter'>(5)</span> Giáo án Tin học 8. Trường THCS TRẦN PHÚ.. - Chuẩn bị tiết sau: Bài thực hành 7. The end. Lop8.net.

<span class='text_page_counter'>(6)</span>


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status