Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 32 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
32
Dung lượng
6,46 MB
Nội dung
TRƯỜNG THCS XÀ PHIÊN MÔN TIN HỌC LỚP HKII KIỂM TRA BÀI CŨ Hãy nêu cú pháp lặp với số lần chưa biết trước giải thích? While ; : Thường phép so sánh : Câu lệnh đơn giản hay câu lệnh ghép Đầu tiên kiểm tra điều kiện, điều kiện sai kết thúc, điều kiện thực câu lệnh sau quay lại kiểm tra điều kiện, vòng lặp tiếp tục Bài 9: Em thường nhìn thấy việc xếp hàng tập thể dục, xếp hàng để mua vé, xếp hàng vào lớp… Qua quan sát xếp hàng em thấy xếp công việc có lợi ích gì? Tập thể dục Bài 9: Sắp xếp công việc làm cho hoạt Trong lậpratrình biết bố trí động diễn mộtcũng cáchvây trật tự nhanh liệu theo dãy, việc khai báo xử lý chóng… liệu trở nên đơn giản nhiều Thay phải viết nhiều câu lệnh giống nhau, ta dùng vài câu lệnh lặp nhường lại phần lớn công việc cho máy tính thực Bài 9: Dãy số biến mảng Xét VD: Viết chương trình nhập điểm kiểm tra môn Tin học sinh lớp Nhập lưu điểm cho học sinh Nhập lưu điểm cho học sinh Var Diem1: real; Readln(Diem1); Var Diem1, Diem2: real; Read(Diem1); Read(Diem2); Vậy nhập lưu điểm cho 40 học sinh sao? Bài 9: Dãy số biến mảng Vậy nhập lưu điểm cho 40 học sinh sao? Khai báo 40 biến: Var Diem1, Diem2, Diem3, …, Diem40: Real; Sử dụng 40 câu lệnh nhập điểm: Read(Diem1); Read(Diem2); Read(Diem3); ….;Readln(Diem40); Những hạn chế: Khi viết chương trình với toán cần - Phải khai báo quádữ nhiều biếnthì có nhập với lượng liệu lớn hạn chế gì? - Chương trình phải viết dài - Dễ nhầm lẫn biến viết chương trình Bài 9: Dãy số biến mảng Khắc phục hạn chế: - Lưu biến có liên quan thành dãy đặt tên chung phải khắc - Đánh số thứ tự (chỉ Vậy số) cho biến phục - Sử dụng câu lệnh lặp để xử lí liệu nào? var Diem1 , Diem , Diem Dữ liệu , , Diem 40 : Real ; Read(Diem1); Read(Diem2); Read(Diem3); ….;Readln(Diem40); kiểu mảng Die msố Chỉ …… - Với i=1 đến 40: nhập Diem_i; 10 Bài 9: Dãy số biến mảng * Dữ liệu kiểu mảng: - Là dãy hữu hạn phần tử có kiểu liệu, xếp thứ tự bằngDữ cáchliệu gán kiểu cho phần tử gì? số mảng A i 12 17 Trong đó: Tên mảng: A Chỉ số: i Số phần tử mảng: Kiểu liệu phần tử: Kiểu số nguyên Khi tham chiếu đến phần tử thứ i, ta viết A[i] Ví dụ: A[5]=17 Bài 9: Dãy số biến mảng * Biến mảng: - Là biến có kiểu liệu kiểu mảng - Giá trị biến mảng mảng, tức dãy số (số nguyên số thực) - Mỗi số giá trị phần tử tương ứng Giá trị mảng Biến mảng A 17 13 20 10 Chỉ số Bài 9: Ví dụ biến mảng b) Truy cập đến giá trị phần tử mảng: Tên Cú pháp: Tênmảng mảng[Chỉ [Chỉsố] số] Ví dụ1: Cho mảng A chứa giá trị sau: 10 - Xác định giá trị của: A[1], A[3], A[5], A[10] ? A[1], A[10]: không xác định A[3]=2; A[5]=4 Bài 9: Ví dụ biến mảng Có mảng: thể thực b) Truy cập đến giá trị phần tử Cú pháp: Tên Tênmảng mảng[Chỉ [Chỉsố] số] thao tác với phần tử mảng? Ví dụ 2: Cho câu lệnh sau: A[3]:=2; A[4]:=5; A[6]:=A[3]+A[4]; A[3]=2 A[4]=5 A[6]=7 Giá trị phần A[3], A[4], A[6] bao nhiêu? - Có thể gán giá trị, đọc giá trị thực tính toán với phần tử mảng Bài 9: Ví dụ biến mảng b) Truy cập đến giá trị phần tử mảng: Ví dụ: Gán giá trị cho 40 phần tử mảng DiemTin DiemTin[1]:=5; DiemTin[2]:=7; ……… DiemTin[40]:=10; Hoặc Readln(DiemTin[1]); Viết chương trình dài For i:=1 to 40 Readln(DiemTin[i]); Readln(DiemTin[2]); ……… Readln(DiemTin([40]); For i := … to … Readln(Tenmang[i]); Bài 9: Ví dụ biến mảng c Nhập giá trị cho mảng A 10 với nn= - Sử dụng lệnh Read (Readln) kết hợp với For Các bước Thể pascal Write(‘ Nhap vao so HS:’); Nhập số phần Readln(n); tử mảng For i:=1 to n Nhập vào giá trị phần tử Begin write(‘Diem cho HS thu ’ ,i, ’ : ’); mảng (A[i]) readln(A[i]); Sử dụng cấu trúc lặp để nhập liệu end; Bài 9: Ví dụ biến mảng d In giá trị phần tử mảng: Ví dụ: In giá trị 40 phần tử mảng DiemTin For i:=1 to 40 Writeln(DiemTin[i]); DiemTin 8 6 … … … … Chỉ số … DiemTin[1] = i DiemTin[4] = For i:= … to … Writeln(Tenmang[i]); … 40 Bài 9: Ví dụ biến mảng d In giá trị phần tử mảng: Sử dụng lệnh Write (Writeln) kết hợp với For - Thông báo Writeln(‘ Điểm lớp : ’); - In giá trị phần tử For i:=1 to n Write(A[i]:5); - Sử dụng cấu trúc lặp để in liệu Kết hình: Điểm lớp: 10 Bài 9: Ví dụ biến mảng e Xử lí liệu (tính toán, so sánh, tìm giá trị lớn nhất, nhỏ …) Ví dụ: Tìm học sinh có điểm tin đạt loại giỏi For t := to 40 if DiemTin[t] > 8.0 then writeln(‘Loai Gioi’); Sử dụng biến mảng câu lệnh lặp (thường For…do) giúp cho việc viết chương trình ngắn dễ dàng Bài 9: b) Bài 9: Củng cố Bài 1: Em chọn đáp án đúng: A Dữ liệu kiểu mảng tập hợp phần tử thứ tự phần tử có kiểu liệu B Dữ liệu kiểu mảng tập hợp phần tử có thứ tự phần tử mảng có kiểu liệu khác C Dữ liệu kiểu mảng tập hợp phần tử có thứ tự phần tử có kiểu liệu Bài 9: Củng cố Bài 2: Cách khai báo biến mảng sau hay sai? Khoanh tròn vào chỗ sai (nếu có) a) Var X: Array[10 , 13] of Real; a) Sửa dấu , thành dấu b) Var X: Array[3 4.8] of Integer; b) Sửa 4.8 thành số nguyên c) Var X: Array[10 1] of Integer; c) Chỉ số cuối phải >= số đầu d) Var X: Array[4 10] of Real; d) Đúng Bài 9: Củng cố Bài 3: Câu lệnh khai báo biến mảng sau máy tính có thực không ? Tại ? Nếu sai sửa lại cho ? Var N : Integer ; A: array [ N ] of real ; Câu lệnh thực số cuối phải số xác định Var N : Integer ; A: array [ 100] of real ; V A R R M A N G U Y R E A D E A L X Ê N Có 44 Có chữ chữ cái: Là từ khóa lệnh trong chương trình trình Pascal Pascal 3cái: chữ cái: Là từ đểchương khai biến Có Có chữ cái: ChỉLà sốcâu đầu, chỉkhóa số cuối trongbáo khai báo mảng Có 3đểchữ cái: Là tên hàm tìm giá trị lớn nhất? dùng dùng dừng để chương thể trình chờ ta biến nhập kiểu giáthực? trị cho biến? trình Pascal? Thường làchương số…………….? Bài 9: Dữ liệu kiểu mảng dãy (tập hợp) hữu hạn phần tử có thứ tự phần tử có kiểu liệu Việc gán giá trị, nhập giá trị tính toán với giá trị phần tử biến mảng thực thông qua số tương ứng phần tử (tên mảng[chỉ số]) Sử dụng biến mảng câu lệnh lặp giúp cho việc viết chương trình dễ dàng ngắn gọn Bài 9: - Học cũ - Tìm hiểu thuật toán tìm giá trị lớn nhất, nhỏ dãy số (xem lại ví dụ trang 43 SGK) - Về nhà làm tập 2, 4, trang 79 SGK - Làm tập 9.1, 9.2, 9.3, 9.7 sách tập Xin chân thành cảm ơn ý theo dõi thầy cô em học sinh ! [...]... Sử dụng biến mảng và câu lệnh lặp giúp cho việc viết chương trình dễ dàng và ngắn gọn hơn Bài 9: - Học bài cũ - Tìm hiểu thuật toán tìm giá trị lớn nhất, nhỏ nhất của dãy số (xem lại ví dụ 6 trang 43 SGK) - Về nhà làm các bài tập 2, 4, 5 trang 79 SGK - Làm các bài tập 9. 1, 9. 2, 9. 3, 9. 7 ở sách bài tập Xin chân thành cảm ơn sự chú ý theo dõi của các thầy cô và các em học sinh ! ... trình - Chỉ số đầu, chỉ số cuối: Là 2 số nguyên, thỏa mãn: chỉ số đầu ≤ chỉ số cuối giữa hai chỉ số là dấu - Kiểu dữ liệu: Là kiểu của các phần tử, là Integer hoặc Real - Số phần tử = chỉ số cuối – chỉ số đầu + 1 Bài 9: 2 Ví dụ về biến mảng a) Cách khai báo mảng trong Pascal: Ví dụ: Cách khai báo đơn giản một biến mảng trong ngôn ngữ Pascal như sau: var Tuoi: array[21 80] of integer; Tên biến Số lượng... những số ………….? Bài 9: Dữ liệu kiểu mảng là một dãy (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 Việc gán giá trị, nhập giá trị và tính toán với các giá trị của một phần tử trong biến mảng được thực hiện thông qua chỉ số tương ứng của phần tử đó (tên mảng[chỉ số] ) Sử dụng biến mảng và câu lệnh lặp giúp cho việc viết chương trình dễ dàng và ngắn gọn hơn Bài 9: -.. .Bài 9: 2 Ví dụ về biến mảng a.Cách khai báo mảng trong Pascal: Var Tên mảng : array [ ] of ; Tuoi 7 6 8 9 Chỉ số 1 2 3 4 … 10 … 40 Var Tuoi : array[1 40] of Integer; Chieuca Chỉosố 1.5 1.65 1.75 1.7 … 2 3 4 5 … Var chieucao: array[2 20] of Real; 1.8 20 Bài 9: 2 Ví dụ về biến mảng a Khai báo mảng một chiều trong Pascal: Var Tên mảng : array[ = chỉ số đầu d) Var X: Array[4 10] of Real; d) Đúng Bài 9: Củng cố Bài 3: Câu lệnh khai báo biến... Chỉ số 1 2 3 4 … DiemTin[1] = 8 i DiemTin[4] = 6 For i:= … to … do Writeln(Tenmang[i]); … 40 Bài 9: 2 Ví dụ về biến mảng d In giá trị các phần tử của mảng: Sử dụng lệnh Write (Writeln) kết hợp với For do - Thông báo Writeln(‘ Điểm của lớp : ’); - In giá trị của từng phần tử For i:=1 to n do Write(A[i]:5); - Sử dụng cấu trúc lặp để in dữ liệu Kết quả trên màn hình: Điểm của lớp: 7 5 8 6 9 10 9 Bài 9: ... ,B: array[1 10] of integer; Bài 9: 2 Ví dụ về biến mảng a) Cách khai báo mảng trong Pascal: Câu lệnh khai báo biến mảng sau đây máy tính có thực hiện được không? Var N : integer; Không xác định A : array[1 N] of real; KHÔNG Lưu ý: - Kích thước của mảng phải được khai báo bằng một con số cụ thể Bài 9: Lưu ý: Kích thước của mảng phải được khai báo bằng một con số cụ thể Bài 9: 2 Ví dụ về biến mảng a)... c Nhập giá trị cho mảng A 7 5 8 6 9 10 9 với nn= 7 - Sử dụng lệnh Read (Readln) kết hợp với For do Các bước Thể hiện bằng pascal Write(‘ Nhap vao so HS:’); 1 Nhập số phần Readln(n); tử của mảng For i:=1 to n do 2 Nhập vào giá trị từng phần tử của Begin write(‘Diem cho HS thu ’ ,i, ’ : ’); mảng (A[i]) readln(A[i]); Sử dụng cấu trúc lặp để nhập dữ liệu end; Bài 9: 2 Ví dụ về biến mảng d In giá trị ... báo số cụ thể Bài 9: Lưu ý: Kích thước mảng phải khai báo số cụ thể Bài 9: Ví dụ biến mảng a) Cách khai báo mảng Pascal: Tênmảng: Tênmảng:array array[