Giáo án Tin học 11 - Bài tập thực hành 4: Làm quen với cách sinh số ngẫu nhiên

Giáo án Tin học 11 - Bài tập thực hành 4: Làm quen với cách sinh số ngẫu nhiên

I. MỤC TIÊU

1. Kiến thức

+ Hiểu nhu cầu của cấu cách sinh số ngẫu nhiên trong biểu diễn thuật toán.

+ Hiểu cấu trúc rand(), cấu trúc srand() và hàm time().

2. Kĩ năng

+ Biết cách vận dụng đúng đắn từng loại cấu trúc vào tình huống cụ thể.

+ Mô tả được thuật toán của một số bài toán có sử dụng hàm sinh số ngẫu nhiên.

+ Viết đúng các lệnh hiểu được ý nghĩa các hàm.

3. Tư duy, thái độ (giá trị)

+ Khơi gợi lòng ham thích giải bài toán bằng lập trình trên máy tính.

+ Tiếp tục rèn luyện các phẩm chất cần thiết của người lập trình như xem xét, giải quyết vấn đề một cách cẩn thận, chu đáo, có sáng tạo,

4. Định hướng hình thành năng lực

+ Giải quyết vấn đề, sáng tạo, giao tiếp, hợp tác, sử dụng ngôn ngữ, sử dụng CNTT và TT

 II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Chuẩn bị của giáo viên

- Thiết bị dạy học: Máy tính cá nhân và máy chiếu (nếu có).

- Học liệu: Soạn giáo án, nghiên cứu sách giáo khoa, sách bài tập, tài liệu tham khảo.

2. Chuẩn bị của học sinh

- Chuẩn bị các nội dung liên quan đến bài học theo sự hướng dẫn của giáo viên như chuẩn bị tài liệu, TBDH .

- Sưu tầm tranh ảnh, tư liệu,.

 

docx 3 trang Người đăng hoan89 Lượt xem 918Lượt tải 0 Download
Bạn đang xem tài liệu "Giáo án Tin học 11 - Bài tập thực hành 4: Làm quen với cách sinh số ngẫu nhiên", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Ngày soạn:23/01/2020
Tiết: 27
 BÀI TẬP THỰC HÀNH 4
LÀM QUEN VỚI CÁCH SINH SỐ NGẪU NHIÊN
I. MỤC TIÊU
Kiến thức
+ Hiểu nhu cầu của cấu cách sinh số ngẫu nhiên trong biểu diễn thuật toán.
+ Hiểu cấu trúc rand(), cấu trúc srand() và hàm time().
Kĩ năng
+ Biết cách vận dụng đúng đắn từng loại cấu trúc vào tình huống cụ thể.
+ Mô tả được thuật toán của một số bài toán có sử dụng hàm sinh số ngẫu nhiên.
+ Viết đúng các lệnh hiểu được ý nghĩa các hàm.
Tư duy, thái độ (giá trị)
+ Khơi gợi lòng ham thích giải bài toán bằng lập trình trên máy tính.
+ Tiếp tục rèn luyện các phẩm chất cần thiết của người lập trình như xem xét, giải quyết vấn đề một cách cẩn thận, chu đáo, có sáng tạo,
Định hướng hình thành năng lực 
+ Giải quyết vấn đề, sáng tạo, giao tiếp, hợp tác, sử dụng ngôn ngữ, sử dụng CNTT và TT
 II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1. Chuẩn bị của giáo viên
- Thiết bị dạy học: Máy tính cá nhân và máy chiếu (nếu có).
- Học liệu: Soạn giáo án, nghiên cứu sách giáo khoa, sách bài tập, tài liệu tham khảo.
2. Chuẩn bị của học sinh
- Chuẩn bị các nội dung liên quan đến bài học theo sự hướng dẫn của giáo viên như chuẩn bị tài liệu, TBDH ..
- Sưu tầm tranh ảnh, tư liệu,...
 III. TỔ CHỨC CÁC HOẠT ĐỘNG HỌC TẬP
Ổn định lớp: Kiểm tra sỹ số
Tiến trình bài học
HOẠT ĐỘNG KHỞI ĐỘNG
HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC VÀ LUYỆN TẬP
Hoạt động 1: Sinh số ngẫu nhiên với hàm rand()
(1) Mục đích: Hàm sinh số ngẫu nhiên
(2) Phương pháp/Kĩ thuật: nêu vấn đề
(3) Hình thức tổ chức hoạt động: cá nhân
(4) Phương tiện dạy học: máy tính, máy chiếu (nếu có)
(5) Sản phẩm: Chương trình sinh số ngẫu nhiên.
Hoạt động của GV
Hoạt động của HS
Nội dung
GV: Sinh số ngẫu nhiên kiểu int;
Nhược điểm của chương trình là không sinh các số ngẫu nhiên khác nhau trong các lần biên dịch vì vậy chúng ta muốn các số thay đổi thì phải kết hợp với hàm srand().
GV: Sinh số ngẫu nhiên với hàm srand() và hàm time()
Để tạo các số ngẫu nhiên trong các lần chạy khác nhau trước khi dung rand() ta sử dụng srand() và truyền vào tham số kiểu int khi tham số này thay đổi thì srand() sẽ sinh ra số khác nhau vậy ta cần phải chuyền cho nó một giá trị động.
Ta sẽ truyền cho tham số thời gian hiện tại bằng hàm time() nằm trong thư viên time.h
GV: Sinh số ngẫu nhiên nằm trong một đoạn.
Ta lợi dụng tính chất chia một số nguyên bất kỳ a cho sô nguyên b cố định thì luôn được kết quả nằm trong đoạn 
[0,b-1]. Ta có công thức sau:
R= minN+rand()%(maxN+1-minN).
HS: Quan sát lắng nghe
HS: Quan sát lắng nghe
HS: Quan sát lắng nghe
1. Chương trình sinh số ngẫu nhiên với rand().
#include 
using namespace std;
int i,a[100];
int main()
{
 for(i=1;i<=10;i++)
 {
 cout << "a["<<i<<"]="<<rand()<<endl;
 }
 return 0;
}
2.Mở rộng Chương trình sinh số ngẫu nhiên với srand().
#include 
using namespace std;
int i,a[100];
int main()
{
 srand((int)time(0));
 for(i=1;i<=10;i++)
 {
 cout << "a["<<i<<"]="<<rand()<<endl;
 }
 return 0;
}
Nâng cao sinh số ngẫu nhiên trong đoạn [minN,maxN].
Chương trình
#include 
using namespace std;
int i,a[10],minN,maxN;
int main()
{
 cout<<"nhap vao can dau=";
 cin>>minN;
 cout<<"nhap vao can cuoi=";
 cin>>maxN;
 srand((int)time(0));
 for(i=1;i<=10;i++)
 {
 cout << "a["<<i<<"]="<<minN+rand()%(maxN+1-minN)<<endl;
 }
 return 0;
}
4. Rút kinh nghiệm
.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Mỹ Tho, ngày.....tháng.....năm.......
KÍ DUYỆT

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

  • docxgiao_an_tin_hoc_11_bai_tap_thuc_hanh_4_lam_quen_voi_cach_sin.docx