Giáo án học kì 2

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Nguyễn Anh Thư
Ngày gửi: 07h:19' 17-04-2020
Dung lượng: 30.5 KB
Số lượt tải: 151
Nguồn:
Người gửi: Nguyễn Anh Thư
Ngày gửi: 07h:19' 17-04-2020
Dung lượng: 30.5 KB
Số lượt tải: 151
Số lượt thích:
0 người
Ngày soạn:9/01/2020
Tiết: 23
BÀI TẬP
I. MỤC ĐÍCH YÊU CẦU
* Kiến thức:
+ Củng cố lại các kiến thức cơ bản khi lập trình với kiểu dữ liệu mảng.
+ Làm quen với thuật toán: tìm phần tử lớn nhất, sắp xếp đơn giản và tìm kiếm nhị phân.
* Kĩ năng:
+ Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc, kĩ năng diễn đạt thuật toán bằng chương trình sử dụng dữ liệu kiểu mảng.
+ Rèn luyện kĩ năng nhận xét, phân tích và đề xuất cách giải bài toán sao cho chương trình chạy nhanh hơn.
* Thái độ:
+ 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,…
II. CHUẨN BỊ
Thầy:- Soạn giáo án, nghiên cứu sgk, sách bài tập, tài liệu tham khảo.
- Máy tính cá nhân và máy chiếu (nếu có).
Trò: - Đọc trước ở nhà Sách giáo khoa.
III.TIẾN TRÌNH LÊN LỚP.
1. Ổn định tổ chức, kiểm tra sĩ số (1’).
2. Kiểm tra bài cũ: (5’)
Câu hỏi: Nêu cách khai báo mảng một chiều? VD?
Đáp án: Kiểu mảng trong C++ được khai báo dạng:
< tên biến mảng>[<độ dài mảng>];
VD: int A[5];
Trong đó:
* là kiểu phần tử của mảng.
Đối tượng HS: HS trung bình.
3. Nội dung bài học mới.
Nội dung
Hoạt động của GV
Hoạt động của HS
Bài tập 1:
Nhập vào một dãy A gồm nsố nguyên. Đếm số lượng các số hạng dương và tính tổng các số hạng dương trong dãy. (20’) * Xác định bài toán:
- Input: Nhập số nguyên dương n và dãy n số nguyên a1,a2,...,an.
- Output: Đưa ra số lượng các số nguyên dương và tổng s các số nguyên dương trong dãy.
* Thuật toán:
- dem=0, s=0
- Cho i chạy từ phần tử 1 đến số phần tử n
nếu A[i]>0 thì
dem++, s=s+A[i]
* Ví dụ: Lấy vd 1 dãy số cụ thể n phần tử và mô tả thuật toán cho hs hiểu.
* Chương trình :
#include
using namespace std;
short a[100000000];
int i,n;
int main()
{
cout << "Nhap vao so phan tu n=";
cin>>n;
for(i=0;i {
cout<<"a["< cin>>a[i];
}
int s=0;int dem=0;
for(i=0;i if (a[i]>0) {dem++;
s=s+a[i];
}
cout<<"so luong so duong trong mang la: "< cout<<"tong cac so duong trong mang la: "< return 0;
}
Bài tập 2:
Nhập vào một dãy A gồm n số nguyên. Đếm số lượng các số chẵn và tính tổng các số chẵn trong dãy.
(20’)
* Chương trình :
#include
using namespace std;
short a[100000000];
int i,n;
int main()
{
cout << "Nhap vao so phan tu n=";
cin>>n;
for(i=0;i {
cout<<"a["< cin>>a[i];
}
int s=0;int dem=0;
for(i=0;i if (a[i]%2==0) {dem++;
s=s+a[i];
}
cout<<"so luong so chan trong mang la: "< cout<<"tong cac so chan trong mang la: "< return 0;
}
GV: Yêu cầu HS xác định Input, Output của bài toán?
GV: Nhận xét và ghi bảng.
GV: Yêu cầu hs nêu các bước của thuật toán
GV: Nhận xét
GV: Lấy vd mô tả thuật toán với 1 dãy số cụ thể
GV: Tương ứng với các
Tiết: 23
BÀI TẬP
I. MỤC ĐÍCH YÊU CẦU
* Kiến thức:
+ Củng cố lại các kiến thức cơ bản khi lập trình với kiểu dữ liệu mảng.
+ Làm quen với thuật toán: tìm phần tử lớn nhất, sắp xếp đơn giản và tìm kiếm nhị phân.
* Kĩ năng:
+ Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc, kĩ năng diễn đạt thuật toán bằng chương trình sử dụng dữ liệu kiểu mảng.
+ Rèn luyện kĩ năng nhận xét, phân tích và đề xuất cách giải bài toán sao cho chương trình chạy nhanh hơn.
* Thái độ:
+ 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,…
II. CHUẨN BỊ
Thầy:- Soạn giáo án, nghiên cứu sgk, sách bài tập, tài liệu tham khảo.
- Máy tính cá nhân và máy chiếu (nếu có).
Trò: - Đọc trước ở nhà Sách giáo khoa.
III.TIẾN TRÌNH LÊN LỚP.
1. Ổn định tổ chức, kiểm tra sĩ số (1’).
2. Kiểm tra bài cũ: (5’)
Câu hỏi: Nêu cách khai báo mảng một chiều? VD?
Đáp án: Kiểu mảng trong C++ được khai báo dạng:
VD: int A[5];
Trong đó:
*
Đối tượng HS: HS trung bình.
3. Nội dung bài học mới.
Nội dung
Hoạt động của GV
Hoạt động của HS
Bài tập 1:
Nhập vào một dãy A gồm nsố nguyên. Đếm số lượng các số hạng dương và tính tổng các số hạng dương trong dãy. (20’) * Xác định bài toán:
- Input: Nhập số nguyên dương n và dãy n số nguyên a1,a2,...,an.
- Output: Đưa ra số lượng các số nguyên dương và tổng s các số nguyên dương trong dãy.
* Thuật toán:
- dem=0, s=0
- Cho i chạy từ phần tử 1 đến số phần tử n
nếu A[i]>0 thì
dem++, s=s+A[i]
* Ví dụ: Lấy vd 1 dãy số cụ thể n phần tử và mô tả thuật toán cho hs hiểu.
* Chương trình :
#include
using namespace std;
short a[100000000];
int i,n;
int main()
{
cout << "Nhap vao so phan tu n=";
cin>>n;
for(i=0;i
cout<<"a["< cin>>a[i];
}
int s=0;int dem=0;
for(i=0;i
s=s+a[i];
}
cout<<"so luong so duong trong mang la: "<
}
Bài tập 2:
Nhập vào một dãy A gồm n số nguyên. Đếm số lượng các số chẵn và tính tổng các số chẵn trong dãy.
(20’)
* Chương trình :
#include
using namespace std;
short a[100000000];
int i,n;
int main()
{
cout << "Nhap vao so phan tu n=";
cin>>n;
for(i=0;i
cout<<"a["< cin>>a[i];
}
int s=0;int dem=0;
for(i=0;i
s=s+a[i];
}
cout<<"so luong so chan trong mang la: "<
}
GV: Yêu cầu HS xác định Input, Output của bài toán?
GV: Nhận xét và ghi bảng.
GV: Yêu cầu hs nêu các bước của thuật toán
GV: Nhận xét
GV: Lấy vd mô tả thuật toán với 1 dãy số cụ thể
GV: Tương ứng với các
 








Các ý kiến mới nhất