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
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:
- bai_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
- www.trungtamtinhoc.edu.vn
- • 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
- www.trungtamtinhoc.edu.vn
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- www.trungtamtinhoc.edu.vn