Bài giảng Tin học Lớp 11 - Bài 11: Mảng một chiều (Tiết 2) - Huỳnh Thị Vu

ppt 13 trang phanha23b 29/03/2022 2730
Bạn đang xem tài liệu "Bài giảng Tin học Lớp 11 - Bài 11: Mảng một chiều (Tiết 2) - Huỳnh Thị Vu", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_tin_hoc_lop_11_bai_11_mang_mot_chieu_tiet_2_huynh.ppt

Nội dung text: Bài giảng Tin học Lớp 11 - Bài 11: Mảng một chiều (Tiết 2) - Huỳnh Thị Vu

  1. www.trungtamtinhoc.edu.vn
  2. • Câu 1: Nêu khái niệm mảng một chiều và trình bày cách khai báo mảng một chiều (khai báo trực tiếp). ❖ Mảng một chiều là dãy hữu hạn các phần tử cùng kiểu. ❖ Khai báo trực tiếp: var : array[kiểu chỉ số] of ; • Câu 2: Khai báo mảng A gồm 20 phần tử có kiểu số nguyên (Khai báo trực tiếp). var A : array[1 20] of integer; www.trungtamtinhoc.edu.vn
  3. www.trungtamtinhoc.edu.vn
  4. 1. Bài toán 1: Tìm phần tử lớn nhất của dãy số nguyên A gồm N phần tử (N 250 và các A[i] 500). Nếu dãy có nhiều phần tử lớn nhất, chỉ cần đưa ra chỉ số của phần tử lớn nhất đầu tiên. ➢ Input: Số nguyên dương N và dãy A gồm N số nguyên A1, A2, , AN. ➢ Output: Chỉ số và giá trị của phần tử lớn nhất trong dãy. www.trungtamtinhoc.edu.vn
  5. Ví dụ: Tìm phần tử lớn nhất trong dãy số sau: 7, 10, 25, 17, 2, 50, 45 Max 7 10 25 17 2 50 45 www.trungtamtinhoc.edu.vn
  6. 1. Nhập N và dãy A1, A2, , AN; write(‘ Nhap so phan tu cua day so: ’); readln(N); for i:=1 to N do begin write(‘ Nhap phan tu thu ’ ,i, ’ = ’); readln(A[i]); end; 2. Max  A1; csmax  1; Max:=A[1]; csmax:=1; 3. i  2. Nếu i > N: đưa ra Max for i :=2 to N do và csmax => Kết thúc; if A[i]>Max then 4. 4.1. Nếu Ai > Max thì begin Max Ai; csmax  i; 4.2. i  i + 1 rồi quay lại bước 3; Max:=A[i]; csmax:=i; end; www.trungtamtinhoc.edu.vn
  7. 2. Bài toán 2: Sắp xếp dãy số nguyên gồm N phần tử (N 250 và các A[i] 500) thành dãy tăng. ➢ Input: Số nguyên dương N và dãy A gồm N số nguyên A1, A2, , AN. ➢ Output: Dãy số A đã được sắp xếp. www.trungtamtinhoc.edu.vn
  8. Ví dụ: Sắp xếp dãy sau thành dãy tăng: 20, 12, 70, 25, 17, 9 Dãy ban đầu: 20 12 70 25 17 9 Duyệt lần 1: 70 Duyệt lần 2: 20 12 70 25 1725 9 Duyệt lần 3: 12 17 9 20 25 70 12 20 25 17 9 70 Duyệt lần 4: 12 9 17 20 25 70 Duyệt lần 5: 9 12 17 20 25 70 www.trungtamtinhoc.edu.vn
  9. 1. Nhập số phần tử N và dãy số write(‘ Nhap so phan tu cua day so: ’); A1, A2, , AN; readln(N); for i:=1 to N do begin write(‘ Nhap phan tu thu ’ ,i, ’ = ’); readln(A[i]); end; 2. j  N; for j :=N downto 2 do 3. Nếu j A[i+1] then 4. j  j –1; i  0; begin 5. i  i + 1; t := A[i]; 6. Nếu i > j thì quay lại bước 3; A[i] :=A[i+1]; 7. Nếu Ai > Ai+1 thì hoán đổi vị trí A[i+1] := t; Ai và Ai+1 cho nhau; end; 8. Quay lại bước 5. writeln(‘ Day so duoc sap xep la: ‘); for i:= 1 to N do write(A[i] : 4); www.trungtamtinhoc.edu.vn
  10. 1. Tổ 1 và tổ 4, mỗi tổ chọn ra 5 bạn lên bảng. Sau đó mỗi tổ cử thêm 1 đại diện lên áp dụng thuật toán sắp xếp dãy tăng để xếp 5 bạn này thành một hàng có chiều cao tăng dần từ trái sang phải. 2. Nhận xét tính đúng đắn khi áp dụng thuật toán sắp xếp dãy tăng của 2 tổ: ▪ Tổ 2 nhận xét tổ 1. ▪ Tổ 3 nhận xét tổ 4. ▪ Tổ nào xếp nhanh hơn và đúng với thuật toán, tổ đó sẽ thắng. www.trungtamtinhoc.edu.vn
  11. 1. Xem lại thuật toán tìm max. 2. Xem lại thuật toán sắp xếp dãy số tăng. www.trungtamtinhoc.edu.vn
  12. 1. Dựa vào thuật toán tìm max, viết thuật toán tìm min. 2. Dựa vào thuật toán sắp xếp dãy số tăng, viết thuật toán sắp xếp dãy số giảm. www.trungtamtinhoc.edu.vn
  13. www.trungtamtinhoc.edu.vn