Tiết 25

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Trần Chí Thu (trang riêng)
Ngày gửi: 14h:36' 18-07-2009
Dung lượng: 52.5 KB
Số lượt tải: 11
Nguồn:
Người gửi: Trần Chí Thu (trang riêng)
Ngày gửi: 14h:36' 18-07-2009
Dung lượng: 52.5 KB
Số lượt tải: 11
Số lượt thích:
0 người
Tuần : 23 Ngày soạn / / 09
Chương IV. KIỂU DỮ LIỆU CÓ CẤU TRÚC
BÀI TẬP VÀ THỰC HÀNH 3 (T1)
A- Mục tiêu bài học:
Kiến thức:
Củng cố cho học sinh hiểu biết về kiểu dữ liệu mảng
Cung cấp cho HS ba thuật toán cơ bản và đơn giản thường gặp với kiểu dữ liệu mảng
Kỹ năng:
Tổ chức các hoạt động trong phòng máy để học sinh có được các kĩ năng cơ bản làm việc với kiểu dữ liệu mảng một chiều trong lập trình cụ thể là:
Khai báo kiểu dữ liệu mảng,
Nhập dữ liệu cho mảng đưa ra màn hình chỉ số và giá trị các phần tử của mảng.
Duyệt qua các phần tử của mảng để xữ lí từng phần tử
Thái độ:
B- Phương pháp:
Vấn đáp và hướng dẫn
C- Chuẩn bị của giáo viên và học sinh:
1. Giáo viên:
2. Học sinh:
D- Tiến trình lên lớp:
I- Ổn định lớp:
II- Kiểm tra bài cũ: Kiểm tra trong quá trình thực hành
III- Bài mới:
Hoạt động của giáo viên và học sinh
Nội dung kiến thức
HĐ1: Hướng dẫn cho HS đọc hiểu chương trình.
Gv yêu cầu HS đọc đề bài 1 và xác định bài toán.
Hs: xác định bài toán:
Input: Nhập N và dãy A1,A2, … , An và số nguyên dương K.
Out: S tổng các phần tử của mảng là bội của số K
Gv: Em hãy nêu ý tưởng giải Bài toán này?
HS:Lần lượt xét giá trị đầu tiên đến cuối dãy i = 1 (N nếu Ai chia hết cho K thì s nhận giá trị mới bằng giá trị trước nó +Ai.
Gv: Yêu cầu Hs đọc chương trình trong SGK.
GV: Giải thích thủ tục Randomize khởi tạo bộ lấy số ngẫu nhiên trước khi dùng lệnh radom(n) để lấy số ngẫu nhiên trong phạm vi từ 1 đến n-1.
Gv: MyArray là một tên kiểu dữ liệu hay biến?
Hs: MyArray là một tên kiểu dữ liệu do chúng ta định nghĩa.
Gv: vai trò của n và nmax khác nhau như thế nào?
Hs: Vai trò N là số phần tử của dãy ta cần nhập vào còn nmax là để giới hạn tối đa số phần tử của dãy.
Gv:Những dòng lệnh nào nhằm tạo ra mảng A?
Hs: từ đoạn
Write(‘ Nhap N’); Readln(N);
For i: = 1 to n do A[i]:=random(300) – random(300);
Gv: Lệnh gán A[i]:=random(300) – random(300); có ý nghĩa gì?
Hs: Nhằm tạo ra một giá trị ngẫu nhiên trong pham vi [-299 .. 299]
Gv: Câu lệnh For … do cuối cùng thực hiện nhiệm vụ gì trong chương trình
Hs: Giải thích
Gv: Câu lệnh s:=s+ A[i]; thực hiện bao nhiêu lần?
Hs: Tuỳ theo mảng A có bao nhiêu ptử có giá trị thoả điều kiện.
Bài 1. Tạo mảng A gồm n (n<=100) số nguyên, mỗi số có giá trị tuyệt đối không vượt quá 300. tính tổng các phần tửcủa mảng là bội của một số nguyên dương k cho trước.
a) Tìm hiểu và chạy thử chương trình.
Program sum1;
Const nmax=100;
Type MyArray= Array[1…nmax] of integer;
Var A;MyArray;
S,n,i,k: Integer;
Begin
Write(‘ Nhap N’); Readln(N);
For i: = 1 to n do A[i]:=random(300) – random(300);
For i:= 1 to n do
Write(A[i]:5);
Writeln;
Write(‘ Nhap K’);
Readln(k);
S:=0;
For i:= 1 to N do
If A[i] mod k = 0 then s:=s+ A[i];
Write(‘ Tong can tinh la:’, S);
Readln;
End.
HĐ2: Tổ chức thực hành
Gv: yêu cầu Hs soạn thảo chương trình trong sách giáo khoa vào trong máy của mình sau đó thực hiện dịch kiểm tra lỗi và thực hiện chương trình.
Gv: Theo dõi, hướng dẫn cho những học sinh còn yếu
Gv: Chú ý
Nhắc Hs ghi lại chương trình vào đĩa.
Khi thực hiện chương trình nên nhập số phần tử của dãy vừa phải.
Quan sát uốn nắn Hs hình thức viết chương trình sao cho thể hiện được tính cấu trúc của nó
Hđ3: sửa đổi chương trình để có được chương trình đưa ra các số dương và các số âm trong mảng
Gv: Hãy
Chương IV. KIỂU DỮ LIỆU CÓ CẤU TRÚC
BÀI TẬP VÀ THỰC HÀNH 3 (T1)
A- Mục tiêu bài học:
Kiến thức:
Củng cố cho học sinh hiểu biết về kiểu dữ liệu mảng
Cung cấp cho HS ba thuật toán cơ bản và đơn giản thường gặp với kiểu dữ liệu mảng
Kỹ năng:
Tổ chức các hoạt động trong phòng máy để học sinh có được các kĩ năng cơ bản làm việc với kiểu dữ liệu mảng một chiều trong lập trình cụ thể là:
Khai báo kiểu dữ liệu mảng,
Nhập dữ liệu cho mảng đưa ra màn hình chỉ số và giá trị các phần tử của mảng.
Duyệt qua các phần tử của mảng để xữ lí từng phần tử
Thái độ:
B- Phương pháp:
Vấn đáp và hướng dẫn
C- Chuẩn bị của giáo viên và học sinh:
1. Giáo viên:
2. Học sinh:
D- Tiến trình lên lớp:
I- Ổn định lớp:
II- Kiểm tra bài cũ: Kiểm tra trong quá trình thực hành
III- Bài mới:
Hoạt động của giáo viên và học sinh
Nội dung kiến thức
HĐ1: Hướng dẫn cho HS đọc hiểu chương trình.
Gv yêu cầu HS đọc đề bài 1 và xác định bài toán.
Hs: xác định bài toán:
Input: Nhập N và dãy A1,A2, … , An và số nguyên dương K.
Out: S tổng các phần tử của mảng là bội của số K
Gv: Em hãy nêu ý tưởng giải Bài toán này?
HS:Lần lượt xét giá trị đầu tiên đến cuối dãy i = 1 (N nếu Ai chia hết cho K thì s nhận giá trị mới bằng giá trị trước nó +Ai.
Gv: Yêu cầu Hs đọc chương trình trong SGK.
GV: Giải thích thủ tục Randomize khởi tạo bộ lấy số ngẫu nhiên trước khi dùng lệnh radom(n) để lấy số ngẫu nhiên trong phạm vi từ 1 đến n-1.
Gv: MyArray là một tên kiểu dữ liệu hay biến?
Hs: MyArray là một tên kiểu dữ liệu do chúng ta định nghĩa.
Gv: vai trò của n và nmax khác nhau như thế nào?
Hs: Vai trò N là số phần tử của dãy ta cần nhập vào còn nmax là để giới hạn tối đa số phần tử của dãy.
Gv:Những dòng lệnh nào nhằm tạo ra mảng A?
Hs: từ đoạn
Write(‘ Nhap N’); Readln(N);
For i: = 1 to n do A[i]:=random(300) – random(300);
Gv: Lệnh gán A[i]:=random(300) – random(300); có ý nghĩa gì?
Hs: Nhằm tạo ra một giá trị ngẫu nhiên trong pham vi [-299 .. 299]
Gv: Câu lệnh For … do cuối cùng thực hiện nhiệm vụ gì trong chương trình
Hs: Giải thích
Gv: Câu lệnh s:=s+ A[i]; thực hiện bao nhiêu lần?
Hs: Tuỳ theo mảng A có bao nhiêu ptử có giá trị thoả điều kiện.
Bài 1. Tạo mảng A gồm n (n<=100) số nguyên, mỗi số có giá trị tuyệt đối không vượt quá 300. tính tổng các phần tửcủa mảng là bội của một số nguyên dương k cho trước.
a) Tìm hiểu và chạy thử chương trình.
Program sum1;
Const nmax=100;
Type MyArray= Array[1…nmax] of integer;
Var A;MyArray;
S,n,i,k: Integer;
Begin
Write(‘ Nhap N’); Readln(N);
For i: = 1 to n do A[i]:=random(300) – random(300);
For i:= 1 to n do
Write(A[i]:5);
Writeln;
Write(‘ Nhap K’);
Readln(k);
S:=0;
For i:= 1 to N do
If A[i] mod k = 0 then s:=s+ A[i];
Write(‘ Tong can tinh la:’, S);
Readln;
End.
HĐ2: Tổ chức thực hành
Gv: yêu cầu Hs soạn thảo chương trình trong sách giáo khoa vào trong máy của mình sau đó thực hiện dịch kiểm tra lỗi và thực hiện chương trình.
Gv: Theo dõi, hướng dẫn cho những học sinh còn yếu
Gv: Chú ý
Nhắc Hs ghi lại chương trình vào đĩa.
Khi thực hiện chương trình nên nhập số phần tử của dãy vừa phải.
Quan sát uốn nắn Hs hình thức viết chương trình sao cho thể hiện được tính cấu trúc của nó
Hđ3: sửa đổi chương trình để có được chương trình đưa ra các số dương và các số âm trong mảng
Gv: Hãy
 








Các Ý Kiến