Tải bản đầy đủ (.docx) (29 trang)

Sổ giáo án tích hợp lập trình căn bản

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (384.45 KB, 29 trang )

Xác định vị trí bài giảng:

1.1.1

DANH MỤC CÁC MÔN HỌC,
ĐUNÁN
ĐÀO TẠO BẮT BUỘC, THỜI
SỔ MÔ
GIÁO
GIAN VÀ PHÂN BỔ THỜI GIAN NGÀNH CÔNG NGHỆ THÔNG TIN

TÍCH HỢP

CAO ĐẲNG NGHỀ:

Môn học:

CHƯƠNG TRÌNH MÔ ĐUN LẬP TRÌNH CĂN BẢN

Mã số mô đun:

Lớp:

Thời gian mô đun: 120h

LẬP TRÌNH CĂN BẢN
Khoá:

(Lý thuyết 60h; Thực hành 60h)

Họ và tên giáo sinh:



I. VỊ TRÍ, TÍNH CHẤT MÔ ĐUN

Năm học:

- Vị trí: Mô đun được bố trí sau khi học xong các môn học chung, mô đun
này học vào học kỳ 1 của năm thứ nhất.
- Tính chất: Là mô đun cơ sở bắt buộc, kiến thức môn này là các kiến
thức cơ bản về lập trình, làm nền tảng để học các môn lập trình sau này.
II. MỤC TIÊU MÔ ĐUN
a- Về kiến thức:
- Hiểu được công dụng của ngôn ngữ lập trình, hiểu cú pháp, công dụng của
các câu lệnh dùng trong ngôn ngữ lập trình .
- Phân tích được chương trình: xác định nhiệm vụ chương trình (phải làm
gì).
b- về kỹ năng:
- Vận dụng điều kiện, trợ giúp môi trường của ngôn ngữ lập trình, chẳng
hạn: các thao tác biên tập chương trình, các công cụ, điều khiển, thực đơn lệnh
trợ giúp, gỡ rối, bẫy lỗi,v.v.
1


- Viết chương trình và thực hiện chương trình trong máy tính.
c- Về thái độ: Cẩn thận, tỉ mỉ trong công việc.
III. NỘI DUNG MÔ ĐUN
1. Nội dung tổng quát và phân phối thời gian
Thời gian
TT

Tên các bài trong mô đun


Tổng

LT

TH

10

8

Kiểm

1

Tổng quan về ngôn ngữ C

số
18

2

Các cấu trúc điều khiển

24

10

12


3

Dữ liệu kiểu mảng

18

8

10

4

Dữ liệu kiểu chuỗi

18

8

9

1

5

Hàm và con trỏ

24

10


12

2

6

Dữ liệu kiểu cấu trúc

18

8

9

1

120

54

60

6

Cộng:

tra
2

2. Nội dung chi tiết

Chương 1: Tổng quan về ngôn ngữ C
Mục tiêu của bài:
-

Hiểu được lịch sử phát triển của ngôn ngữ lập trình

-

Biết được ngôn ngữ này có những ứng dụng thực tế như thế nào

-

Biết được cách tìm và xây dựng giải thuật cho bài toán

-

Biết được cách khởi động được và thoát khỏi chương trình

-

Biết được các thành phần cơ bản của ngôn ngữ

-

Biết được cách nhập xuất dữ liệu và cấu trúc chung của chương

trình
Nội dung của bài:
1.1- Khái niệm về lập trình


Thời gian:18h (LT:10h; TH:8h)
2


1.1.1- Định nghĩa
1.1.2- Giải thuật
1.1.3- Đặc tính của giải thuật
1.1.4- Các công cụ thể hiện giải thuật
1.2- Các khái niệm cơ bản trong ngôn ngữ C
1.2.1- Tập ký tự dùng trong ngôn ngữ
1.2.2- Từ khóa, tên
1.2.3- Hằng, kiểu, biến
1.2.4- Phép toán
1.2.5- Biểu thức
1.2.6- Khai báo
1.2.7- Phép gán
1.2.8- Nhập xuất dữ liệu
1.2.9- Khối lệnh
1.2.10- Cấu trúc chung của chương trình
1.2.11- Các qui tắc trong lập trình
1.3- Ví dụ minh họa
1.3.1- Tìm giải thuật cho bài toán
1.3.2- Tạo tập tin chương trình
1.3.3- Dịch chương trình
1.3.4- Thực thi chương trình
Chương 2: Các cấu trúc điều khiển
Mục tiêu của bài:
-

Hiểu và sử dụng được cấu trúc rẽ nhánh


-

Hiểu và sử dụng được cấu trúc lặp

-

Hiểu được và vận dụng được các cấu trúc điều khiển vào các
chương trình cụ thể
3


Nội dung của bài:

Thời gian: 24h (LT: 12h;TH:
12h)

2.1- Cấu trúc rẽ nhánh
2.1.1- Cấu trúc If
2.1.2- Cấu trúc switch
2.1.3- Lệnh goto và nhãn
2.2- Cấu trúc lặp
2.2.1- Cấu trúc For
2.2.2- Cấu trúc While
2.2.3- Cấu trúc Do While
2.2.4- Lệnh Break và Continue
Chương 3: Dữ liệu kiểu mảng
Mục tiêu của bài:
-


Hiểu được định nghĩa và ứng dụng kiểu mảng

-

Hiểu và vận dụng được mảng 1 chiều

Hiểu và vận dụng được mảng nhiều chiều
Nội dung của bài
-

Thời gian: 18h
(LT:8h;TH:10h)

3.1- Định nghĩa và ứng dụng
3.2- Mảng một chiều
3.2.1- Định nghĩa
3.2.2- Khai báo
3.2.3- Truy xuất
3.2.4- Các ví dụ
3.3- Mảng nhiều chiều
3.3.1- Định nghĩa
3.3.2- Khai báo
4


3.3.3- Truy xuất
3.3.4- Các ví dụ
Chương 4: Dữ liệu kiểu chuỗi
Mục tiêu của bài:
-


Hiểu được định nghĩa, khai báo và các thao tác trên kiểu chuỗi

-

Hiểu và vận dụng được các hàm xử lý chuỗi

Viết được các chương trình ứng dụng
Nội dung của bài:
Thời gian: 18h(LT:9h; TH:9h)
4.1- Định nghĩa và khai báo
-

4.2- Các thao tác trên kiểu chuỗi
4.2.1- Phép gán
4.2.2- Phép ghép
4.2.3- Phép so sánh
4.3- Các hàm xử lý chuỗi
4.3.1- Hàm tìm kiếm
4.3.2- Hàm trả về chiều dài
4.3.3- Hàm chuyển kiểu hoa thường
4.3.4- Hàm sao chép
4.3.5- Hàm đảo ngược
4.3.6- Hàm thay thế ký tự
4.4- Các chương trình ứng dụng
Chương 5: Hàm và con trỏ
Mục tiêu của bài:
-

Hiểu định nghĩa và cấu trúc chung của một hàm


-

Hiểu được khái niệm con trỏ và ứng dụng của nó
5


Hiểu được cách xây dựng hàm bằng giải thuật đệ qui
Nội dung của bài:
Thời gian: 24h(LT:12h;TH:12h)
5.1- Hàm
-

5.1.1- Định nghĩa
5.1.2- Qui tắc xây dựng
5.1.3- Cấu trúc chung
5.1.4- Các ví dụ
5.2- Con trỏ và địa chỉ
5.2.1- Địa chỉ
5.2.2- Con trỏ
5.2.3- Qui tắc sử dụng con trỏ
5.2.4- Tham số kiểu con trỏ
5.2.5- Con trỏ và mảng
5.3- Đệ qui
5.3.1- Định nghĩa
5.3.2- Cách dùng
5.3.3- Cấu trúc chung một hàm đệ qui
5.3.4- Các ví dụ
Chương 6: Dữ liệu kiểu cấu trúc
Mục tiêu của bài:

-

Hiểu được định nghĩa và cách khai báo kiểu cấu trúc

-

Vận dụng kiểu cấu trúc vào các chương trình ứng dụng

Hiểu được định nghĩa và cách khai báo kiểu hợp
Nội dung của bài
Thời gian: 18h(LT:9h;TH:9h)
6.1- Kiểu cấu trúc
-

6.1.1- Định nghĩa
6.1.2- Khai báo
6.1.3- Cách truy xuất
6


6.1.4- Các ví dụ
6.2- Ứng dụng kiểu cấu trúc
6.2.1- Mảng cấu trúc
6.2.2- Con trỏ cấu trúc
6.2.3- Hàm trên các cấu trúc
6.2.4- Cấp phát bộ nhớ động
6.3- Kiểu hợp
6.3.1- Định nghĩa
6.3.2- Khai báo
6.3.3- Các ví dụ

IV. ĐIỀU KIỆN THỰC HIỆN MÔ ĐUN
a- Dụng cụ và trang thiết bị
+ Phấn, bảng đen
+ Máy chiếu Projector
+ Máy vi tính
+ Phần mềm: Ngôn ngữ lập trình C
b- Học liệu
+ Các slide bài giảng.
+ Sách lập trình căn bản
c- Nguồn lực khác
+ Phòng học lý thuyết đúng tiêu chuẩn và phòng thực hành đủ điều kiện
thực hành
V. PHƯƠNG PHÁP VÀ NỘI DUNG ĐÁNH GIÁ
a-Về kiến thức:
Được đánh giá qua bài viết, kiểm tra vấn đáp hoặc trắc nghiệm, tự luận, thực
hành đạt các yêu cầu:
7


-

Biết được ngôn ngữ lập trình nào đó (C hay Pascal)

-

Nêu thuật toán và viết chương trình các bài toán đơn giản

-

Biết chuẩn đoán và sửa chữa lỗi trong chương trình


b- Về kỹ năng:
Đánh giá kỹ năng thực hành của sinh viên:
-

Nắm được cú pháp lệnh

-

Vận dụng vào lập trình

-

Chủ động, say mê, ham thích

c- Về thái độ: Cẩn thận, thao tác nhanh chuẩn xác, tự giác trong học tập.
VI. HƯỚNG DẪN THỰC HIỆN MÔ ĐUN
1. Phạm vi áp dụng chương trình:
- Chương trình môn học được sử dụng để giảng dạy cho trình độ Cao đẳng
nghề.
- Giáo viên trước khi giảng dạy cần phải căn cứ vào Nội dung của từng bài học
chuẩn bị đầy đủ các điều kiện thực hiện bài học để đảm bảo chất lượng giảng
dạy.
2. Hướng dẫn một số điểm chính về phương pháp giảng dạy mô đun:
- Sử dụng phương pháp phát vấn
- Phân nhóm cho các sinh viên trao đổi với nhau, trình bày theo nhóm
- Khi giảng dạy có thể sử dụng các ngôn ngữ về lập trình để mô phỏng cho các
bài toán: C, Pascal, .NET…
3.Những trọng tâm chương trình cần chú ý:
Giáo viên trước khi giảng dạy cần phải căn cứ vào nội dung của từng bài học

chuẩn bị đầy đủ các điều kiện thực hiện bài học để đảm bảo chất lượng giảng
dạy.
4.Tài liệu cần tham khảo:

8


[1] Giáo trình Kỹ thuật lập trình C Căn bản & Nâng cao – GS. Phạm Văn Ất
(Chủ biên) - Nhà xuất bản Hồng Đức
[2] Giáo trình Lý thuyết và bài tập ngôn ngữ C – Nguyễn Đình Tê, Hoàng Đức
Hải – Nhà xuất bản Giáo dục
[3] Lập trình căn bản – Đoàn Nguyên Hải – Trường Đại học Bách khoa
TP.HCM
[4] Cẩm nang Thuật Toán 1 và 2 – Robert Sedgewick – Nhà xuất bản Khoa học
Kỹ thuật
[5] Programming in C – UNIX System Calls and Subroutines Using C – A. D.
Marshall 1994-2005
[6] Các trang Web có liên quan đến môn học
Vĩnh long, ngày 17 tháng 11 năm 2015

GV phản biện 1

GV phản biện 2

Hiệu Trưởng

GV biên soạn

Khoa chuyên môn


1.1.2

Soạn bài giảng:

Chương 2: CÁC CẤU TRÚC ĐIỀU KHIỂN(tiếp theo)
2.1. CẤU TRÚC RẼ NHÁNH:
2.2. CẤU TRÚC LẶP:
2.2.1. Cấu trúc for:
2.2.1.1. Cú pháp:
9


for (dãy biểu thức 1; điều kiện lặp; dãy biểu thức 2)
khối lệnh lặp;
-

Các biểu thức trong dãy biểu thức 1, 2 cách nhau bởi dấu phẩy (,). Có thể
có nhiều biểu thức trong các dãy này hoặc dãy biểu thức cũng có thể
trống.

-

Điều kiện lặp: là biểu thức logic (có giá trị đúng, sai).

Các dãy biểu thức và điều kiện có thể trống tuy nhiên vẫn giữ lại các dấu
chấm phẩy (;) để ngăn cách các phần với nhau.
2.2.1.2. Lưu đồ cú pháp:

S


Đ
dãy biểu thức 2

dãy biểu thức 1

điều kiện lặp

khối lệnh lặp

10


2.2.1.3. Cách thực hiện:
Khi gặp câu lệnh for trình tự thực hiện của chương trình như sau:
-

Thực hiện dãy biểu thức 1 (thông thường là các lệnh khởi tạo cho một số
biến)

-

Kiểm tra điều kiện lặp, nếu đúng thì thực hiện khối lệnh lặp  thực hiện
dãy biểu thức 2  quay lại kiểm tra điều kiện lặp và lặp lại quá trình trên
cho đến khi việc kiểm tra điều kiện lặp cho kết quả sai thì dừng.

Tóm lại, dãy biểu thức 1 sẽ được thực hiện 1 lần duy nhất ngay từ đầu quá
trình lặp sau đó thực hiện các câu lệnh trong khối lệnh lặp và dãy biểu thức 2
cho đến khi nào không còn thỏa điều kiện lặp nữ thì dừng.
Tương tự như cấu trúc if, nếu khối lệnh lặp có nhiều hơn 1 câu lệnh thì bao
chúng trong cặp ngoặc móc {}.

2.2.1.4. Ví dụ minh họa:
Ví dụ 1: Viết chương trình tính tổng n số nguyên dương đầu tiên, với n dược
nhập từ bàn phím.
#include <cstdlib>
#include <iostream>
using namespace std;
main()
{
int n,I;
long kq=0;
cout <<”Nhap vao so nguyen n= ”;
cin>>n;
for(i=1; i<=n;i++)
kq +=i;
cout << “tong “<cout<system(“pause”);
11


}
Ví dụ 2: Viết chương trình tính tổng

#include <cstdlib>
#include <iostream>
using namespace std;
main()
{
int n,I;
float kq=0;

cout <<”Nhap vao so nguyen n= ”;
cin>>n;
for(i=1; i<=n;i++)
kq +=1.0/i;
cout << “Tong S= “<cout<system(“pause”);
}
Ví dụ 3: Viết chương trình in ra màn hình dãy giảm dần các số lẻ bé hơn một số
n nào đó được nhập từ bàn phím.
#include <cstdlib>
#include <iostream>
using namespace std;
main()
{
int n,I;
cout <<”Nhap vao so nguyen n= ”;
cin>>n;
if (n%2==0) i=n-1;
12


else i=n;
for( ; i>=1;i=i-2)
kq +=i;
cout <
”;

cout<

system(“pause”);
}
2.2.1.5. Đặc điểm:
Thông qua phần giải thích cách hoạt động của câu lệnh for trong ví dụ 3 có
thể thấy các thành phần của for có thể để trống, tuy nhiên các dấu chấm phẩy
vẫn giữ lại để ngăn cách các thành phần với nhau.
2.2.1.6. Lệnh for lồng nhau:
Trong khối lệnh lặp có thể chứa cả lệnh for, tức là các lệnh for cũng được
phép lồng nhau như các cấu trúc khác.
Ví dụ 4: Bài toán cổ: “Vừa gà vừa chó, bó lại cho tròn, 36 con, 100 chân
chẵn”. Hỏi có mấy gà và mấy chó.
Để giải bài toán này ta gọi g là số gà và c là số chó. Theo điều kiện bài toán
ta thấy g có thể đi từ 0 và đến tối đa là 50 (vì chỉ có 100 chân), tương tự c có
thể đi từ 0 đến 25. Như vậy ta có thể cho g chạy từ 0 đến 50 và với mỗi giá
trị cụ thể của g lại cho c chạy từ 0 đến 25, lần lượt với mỗi cặp (g,c) cụ thể
đó ta kiễm tra 2 điều kiện: g+c==36 (số con) và 2g+4c==100 (số chân). Nếu
cả hai điều kiện đều thỏa thì cặp (g, c) cụ thể đó chính là nghiệm cần tìm. Từ
đó ta có chương trình với 2 vòng lặp for lồng nhau.
#include <cstdlib>
#include <iostream>
using namespace std;
main()
{
int g,c;
13


for(g=1; g<=50;g++)
for(c=1; c<=25;c++)
if(g+c==36 && 2*g+4*c==100)

cout<<”Ga= ”<cout<system(“pause”);
}
Ví dụ 5: Viết chuong trình tìm tất cả các phương án để đổi 100$ ra các tờ
bạc loại 10$, 20$, 50$.
#include <cstdlib>
#include <iostream>
using namespace std;
main()
{
int st10,st20,st50,sopa=0;
for(st10=0; st10<=10; st10++)
for(st20=0; st20<=5; st20++)
for(st50=0; st50<=2; st50++)
if(st10*10+st20*20+st50*50==100)
{
sopa++;
if(st10) cout<if(st20) cout<if(st50) cout<}
cout<<”Tong ca Phuong an la: ”<cout<system(“pause”);
}
14


Lưu ý:

Các lỗi thường gặp:
1. Lưu ý đến phần khởi tạo giá trị và phần biểu thức điều kiện tránh tình
trạng vòng lặp có thể thực hiện thiếu hoặc dư một lần. Ví dụ như
For (i=1; i<11; i++) sẽ thực hiện 10 lần
For (i=1; i<=10; i++) sẽ thực hiện 10 lần
For (i=1; i<=11; i++) sẽ thực hiện 11 lần
2. Sử dụng toán tử gán (=) thay vì toán tử quan hệ bằng (==) trong các biểu
thức điều kiện, hay ngược lại với biểu thức khởi tạo trong for.
3. Đặt dấu ; ngay sau biểu thức điều kiện của while (gây treo máy) hoặc
ngay dấu ngoặc “)” của vòng lặp for có lệnh bên dưới
Ví dụ:
Total=0;
For (i=1; i<=10; i++);
Total +=num;
4. Sử dụng dấu phẩy ngăn cách giữa 3 nhóm lệnh trong ngoặc của for thay
vì chấm phẩy.
1.1.3 Soạn giáo án:
Giáo án Tích hợp
GIÁO ÁN SỐ: ......

Thời gian thực hiện: 1 giờ
Tên bài học trước: Chương 2: CÁC CẤU TRÚC ĐIỀU
KHIỂN(tiếp theo)
Thực hiện từ ngày........ đến ngày ...........

TÊN BÀI: CÁC CẤU TRÚC ĐIỀU KHIỂN

MỤC TIÊU BÀI HỌC:
Sau khi học xong bài này, người học có:
a.


-

Kiến thức:

Trình bày được cú pháp vòng lặp for.

15


-

Trình bày được sơ đồ cú pháp, cũng như cách thực hiện của sơ đồ cú pháp
vòng lặp for.
b.

Kỹ năng:

-

Khai báo đúng cú pháp vòng lặp for.

-

Thực hiện được các bài tập áp dụng for.
c. Thái độ:

-

Rèn luyện được tính thận trọng lập trình với cấu trúc for.


ĐỒ DÙNG VÀ TRANG THIẾT BỊ DẠY HỌC
-

Bảng phấn;

-

Giáo án, đề cương, bài giảng;

-

Bảng qui trình, các tài liệu phát tay;

-

Máy chiếu, máy vi tính kết nối mạng, thiết bị hỗ trợ trình diễn;

HÌNH THỨC TỔ CHỨC DẠY HỌC
-

Dẫn nhập, giới thiệu chủ đề, lí thuyết liên quan, trình tự thực hiện: Tổ chức
theo lớp

-

Thực hành: Tổ chức theo từng học viên

-


Kết thúc vấn đề, hướng dẫn tự học: Tổ chức theo lớp

I. ỔN ĐỊNH LỚP HỌC:

Thời gian: 05 phút

-

Kiểm tra sĩ số:......................................................................

-

Nhắc nhở: ...........................................................................

-

Kiểm tra bài cũ.

II. THỰC HIỆN BÀI HỌC.

T

NỘI DUNG

HOẠT ĐỘNG DẠY HỌC
16

THỜI



T
1

2

3

HOẠT ĐỘNG CỦA HOẠT ĐỘNG CỦA
GIAN
GIÁO VIÊN
HỌC SINH
Dẫn nhập
5 phút
- Nêu một vài ví - Lắng nghe;
dụ về vòng lặp;
- Mời vài sinh - Lắng nghe, suy
viên nêu một số ví
nghĩ và phát biểu
dụ khác;
trả lời câu hỏi;
- Lắng nghe câu - Lắng nghe nhận
trả lời, đưa ra nhận
xét của giáo viên;
xét;
- Chuyển tiếp sang - Chuẩn bị tư thế
nội dung học tập
học tập các nội
bài mới;
dung của bài mới;
Giới thiêu chủ

5 phút
đề
- Tên bài học: - Giới thiệu tên - Lắng nghe, ghi
Các cấu trúc
bài học;
chép tên bài học;
điều khiển.
- Mục tiêu:
- Trình chiếu, giới - Quan sát, ghi
thiệu mục tiêu bài
nhận các mục tiêu
học;
cần đạt được;
- Nội dung bài - Trình chiếu, giới - Quan sát, lắng
học:
thiệu khái quát nội
nghe, nhận biết các
dung bài học;
nội dung cần học;
- Chuyển tiếp sang
nội dung cần học; - Chuẩn bị tư thế;
Giải quyết vấn
30
đề
phút
2.1. Cấu trúc rẽ
nhánh:
2.2. Cấu trúc
30
lặp:

phút
2.2.1. Cấu
trúc for:
2.2.1.1.
pháp:

Cú -

Trình chiếu cú pháp cấu trúc for;
- Giải thích các tham số;
17

Quan sát;
Lắng nghe;

1 phút


2.2.1.2. Lưu - Trình chiếu lưu
đồ cú pháp:
đồ cú pháp cấu
trúc for;
2.2.1.3. Cách - Trình chiếu cách
thực hiện:
thực hiện lưu đồ
cấu trúc for;
2.2.1.4. Ví dụ - Cho một ví dụ 1;
minh họa:
- Giải thích ví dụ,
phân tích, thực

hiện và chạy thử;
- Cho một ví dụ 2;
- Giải thích ví dụ;
- Gọi một học viên
thực hiện ví dụ;
- Theo dõi và hỗ
trợ thực hành,
kiểm tra kết quả
của sinh viên;
- Mời sinh viên
khác nhận xét kết
quả thực hiện;
- Tổng kết lại các
phát biểu và trình
chiếu kết quả, đưa
ra nhận xét;
- Đánh giá kết quả
thực hành của sinh
viên;
- Trình chiếu ví dụ
3,
giải
thích,
hướng dẫn sinh
viên về nhà thực
hiện;
2.2.1.5.
Đặc - Trình chiếu đặc
điểm:
điểm cấu trúc for;


-

Quan
nhận;

-

Chú ý quan sát, 2 phút
lắng nghe;

ghi 1 phút

-

Quan sát;
Lắng nghe;

-

Quan sát;
Lắng nghe;
Thực hiện ví dụ;

-

Lắng nghe sự hộ
trợ, tiếp tục hoàn
thiện ví dụ;


-

Nhận xét, thêm ý
kiến;

19
phút

-

Lắng nghe;

-

Lắng nghe;

-

Quan sát;

-

Quan sát, lắng 2 phút
nghe;

2.2.1.6. Lệnh - Trình bày nội for lồng nhau:
dung lệnh for lồng
nhau;
- Cho ví dụ lệnh
for lồng nhau;

- Giải thích, phân
18

sát,

Lắng nghe;
Quan sát;
Lắng nghe;

5 phút


-

-

4

tích ví dụ;
Gọi một học viên
thực hiện ví dụ;
Theo dõi và hỗ
trợ thực hành,
kiểm tra kết quả
của sinh viên;
Mời sinh viên
khác nhận xét kết
quả thực hiện;
Tổng kết lại các
phát biểu và trình

chiếu kết quả, đưa
ra nhận xét;
Đánh giá kết quả
thực hành của sinh
viên;

-

Thực hiện ví dụ;

-

Lắng nghe sự hộ
trợ, tiếp tục hoàn
thiện ví dụ;

-

Nhận xét, thêm ý
kiến;

-

Lắng nghe;

-

Lắng nghe;

Kết thúc vấn đề


10
phút

-

Củng cố kiến - Khái quát nội
thức:
dung kiến thức bài
+
Cấu trúc
học;
for
- Đặt câu hỏi liên
quan đến kiến thức
bài học;
- Ghi nhận câu trả
lời, nhận xét;
- Hệ thống lại các
bước tiến hành
thực hiện, phân
tích nội dung quan
trong;
- Củng cố kỹ - Nhắc lại một số
năng
rèn
kỹ năng cần có;
luyện:
+ Phân tích
bài tập;

+ Lựa chọn
cấu trúc phù
hợp;
+ Lập trình;
- Lưu ý một số - Hệ thống lại một
lỗi thường gặp:
số lỗi thường gặp;
19

-

Lắng nghe, hệ
thống lại các kiến
thức đã học;

-

Nghe câu hỏi suy
nghĩ trả lời;

-

Lắng nghe, ghi
nhớ;

-

Lắng nghe, ghi
nhớ các bước thực
hiện, các thao tác

thực hành;

-

Lắng nghe, chú
ý;


-

Nhận xét đánh
- Nhận xét kết
giá kết quả học tập
quả học tập:
của sinh viên;
- Hướng dẫn - Yêu cầu sinh
chuẩn bị cho
viên xem trước bài
buổi học sau:
tiếp theo;
-

Lắng nghe, rút ra
được kinh nghiệm;

-

Lắng nghe, ghi
nhận;


-

Lắng nghe, ghi
chép các yêu cầu
của giáo viên, xác
định các nhiệm vụ
cần chuẩn bị;

5

Hướng dẫn tự
học
- Tham khảo -

5 phút

Giới thiệu, giao - Lắng nghe và ghi
nhiệm vụ nghiên
chép;
một số tài liệu
cứu tài liệu tham
liên quan;
khảo;
- Cho bài tập về - Lắng nghe và ghi
nhà và hướng dẫn
chép;
- Hướng dẫn
làm bài;
tự rèn luyện;
- Tiếp tục luyện - Rèn luyện cá

tập sử dụng cấu
nhân để hình thành
trúc for, while thực
và phát triển kỹ
hiện các bài tập
năng.
khác.
III. RÚT KINH NGHIỆM TỔ CHỨC THỰC HIỆN:
.........................................................................................................................................
.........................................................................................................................................

20


.........................................................................................................................................
.........................................................................................................
TRƯỞNG KHOA/ TRƯỞNG TỔ MÔN

Ngày.....tháng ........năm........
GIÁO VIÊN

1.1.3 Soạn tài liệu học tập:
Chương 2: CÁC CẤU TRÚC ĐIỀU KHIỂN
2.2. CẤU TRÚC LẶP:
2.2.1. Cấu trúc for:
2.2.1.1. Cú pháp:
for (………..; ………….; ……………….)
khối lệnh lặp;
21



- Các biểu thức trong dãy biểu thức 1, 2 cách nhau bởi dấu phẩy (,). Có thể
có nhiều biểu thức trong các dãy này hoặc dãy biểu thức cũng có thể
trống.
- ………………………………………….
Các dãy biểu thức và điều kiện có thể trống tuy nhiên vẫn giữ lại các dấu
chấm phẩy (;) để ngăn cách các phần với nhau.
2.2.1.2. Lưu đồ cú pháp:

S

Đ
dãy biểu thức 2

dãy biểu thức 1

điều kiện lặp

khối lệnh lặp

2.2.1.3. Cách thực hiện:
Khi gặp câu lệnh for trình tự thực hiện của chương trình như sau:
22


- Thực hiện dãy biểu thức 1 (thông thường là các lệnh khởi tạo cho một số
biến)
- Kiểm tra điều kiện lặp, nếu đúng thì thực hiện khối lệnh lặp  thực hiện
dãy biểu thức 2  quay lại kiểm tra điều kiện lặp và lặp lại quá trình trên
cho đến khi việc kiểm tra điều kiện lặp cho kết quả sai thì dừng.

Tóm lại, dãy biểu thức 1 sẽ được thực hiện 1 lần duy nhất ngay từ đầu quá
trình lặp sau đó thực hiện các câu lệnh trong khối lệnh lặp và dãy biểu thức 2
cho đến khi nào không còn thỏa điều kiện lặp nữ thì dừng.
Tương tự như cấu trúc if, nếu khối lệnh lặp có nhiueef hơn 1 câu laanhj thì
bao chúng trong cặp ngoặc móc {}
2.2.1.4. Ví dụ minh họa:
Ví dụ 1: viết chương trình tính tổng n số nguyên dương đầu tiên, với n dược
nhập từ bàn phím.
#include <cstdlib>
#include <iostream>
using namespace std;
main()
{
int n,I;
long kq=0;
cout <<”Nhap vao so nguyen n= ”;
cin>>n;
for(i=1; i<=n;i++)
kq +=i;
cout << “tong “<cout<system(“pause”);
}
Ví dụ 2: Viết chương trình tính tổng
23


Ví dụ 3: Viết chương trình in ra màn hình dãy giảm dần các số lẻ bé hơn một số
n nào đó được nhập từ bàn phím.
2.2.1.5. Đặc điểm:

Thông qua phần giải thích cách hoạt động của câu lệnh for trong ví dụ 3 có
thể thấy các thành phần cảu for có thể để trống, tuy nhiên các dâu schaams
phẩy vẫn giư lại để ngăn cách các thành phần với nhau.
2.2.1.6. Lệnh for lồng nhau:
Trong khối lệnh lặp có thể chứa cả lệnh for, tức là các lệnh for cũng được
phép lồng nhau như các cấu trúc khác.
Ví dụ 4: Bài toán cổ:“Vừa gà vừa chó, Bó lại cho tròn, 36 con, 100 chân
chẵn”. Hỏi có mấy gà và mấy chó.
....................................................................................................................
....................................................................................................................
....................................................................................................................
....................................................................................................................
.....................................................................................................................
Ví dụ 5: Viết chuong trình tìm tất cả các phương án để đổi 100$ ra các tờ
bạc loại 10$,20$,50$.
1.3.1. Soạn câu hỏi và bài tập:
1. Viết chương trình tính tích N số nguyên dương đầu tiên, với N được nhập
từ bàn phím.
2. Viết chương trình tính tổng
với n,m là số nguyên dương được nhập từ bàn phím.
3. Viết chương trình nhập vào 2 số nguyên dương. Tìm UCLN và BCNN
cho 2 số đó.
4. Viết chương trình nhập vào chiều dài và chiều rộng cho 1 hình chữ nhật.
In ra hình chữ nhật đó bằng dấu *. Giả sử như nhập cd=8, cr=5 thì in:
24


*******
*******
*******

*******
*******
5. Viết chương trình nhập vào số nguyên dương n. In ra tam giác có dạng:
@
@@
@@@
@@@@
@@@@@
(Nếu nhập vào là 5)
6. Viết chương trình in ra tất cả các số nguyên tố nhỏ hơn N, N được nhập
từ bàn phím.
7. Viết chương trình tính S= 1/2 +2/3+…+n/(n+1), với n được nhập từ bàn
phím.
8. Viết chương trình tính S= 1+2-3+4+5 -… +(-1)nn,với n được nhập từ bàn
phím.
9. Viết chương trình tính S = 1+1/1! +1/2!+1/3!+…+1/n!, với n được nhập
từ bàn phím.
10.Viết chương trình in ra ước số của n.
11. Viết chương trinh kiểm tra một số có phải là số nguyên tố?
1.3.2. Thiết kế Phiếu hướng dẫn thực hiện:
Phiếu hướng dẫn thực hiện Tích hợp
PHIẾU HƯỚNG DẪN THỰC HIỆN
Tên bài luyện tập: Sữ dụng cấu trúc lặp for

25


×