Bài giảng Nhập môn lập trình - Câu lệnh lặp

Ví dụ

Viết chương trình xuất các số từ 1 đến 10

 => Sử dụng 10 câu lệnh printf

Viết chương trình xuất các số từ 1 đến 1000

 => Sử dụng 1000 câu lệnh printf !

Giải pháp

Sử dụng cấu trúc lặp lại một hành động trong khi còn thỏa một điều kiện nào đó.

3 lệnh lặp: for, while, do while

 

ppt47 trang | Chuyên mục: Pascal | Chia sẻ: dkS00TYs | Lượt xem: 2158 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Nhập môn lập trình - Câu lệnh lặp, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
NHẬP MÔN LẬP TRÌNH CÂU LỆNH LẶP Nội dung Câu lệnh lặp Đặt vấn đề Ví dụ Viết chương trình xuất các số từ 1 đến 10 	=> Sử dụng 10 câu lệnh printf Viết chương trình xuất các số từ 1 đến 1000 	=> Sử dụng 1000 câu lệnh printf ! Giải pháp Sử dụng cấu trúc lặp lại một hành động trong khi còn thỏa một điều kiện nào đó. 3 lệnh lặp: for, while, do… while Câu lệnh lặp Câu lệnh for Câu lệnh lặp Đ S for (; ; ) 	; , , : là biểu thức C bất kỳ có chức năng riêng : đơn hoặc khối lệnh. Câu lệnh for Câu lệnh lặp void main() { 	int i; 	for (i = 0; i Câu lệnh lặp int i; for (i = 0; i Câu lệnh lặp int i; for (i = 0; i Câu lệnh lặp int i; for (i = 0; i = 10) 	break; 	printf(“%d\n”, i); } Câu lệnh for - Một số lưu ý Lệnh break làm kết thúc câu lệnh. Lệnh continue bỏ qua lần lặp hiện tại. Câu lệnh lặp for (i = 0; i Tương đương câu lệnh rỗng. Câu lệnh lặp for (i = 0; i , , cách nhau bằng dấu ; Nếu có nhiều thành phần trong mỗi phần thì được cách nhau bằng dấu , Câu lệnh lặp for (int i = 1, j = 2; i + j Đ S while () 	; Câu lệnh đơn hoặc Câu lệnh phức (kẹp giữa { và }) Biểu thức C bất kỳ, thường là biểu thức quan hệ cho kết quả 0 (sai) và != 0 (đúng) Câu lệnh while Câu lệnh lặp int i = 0; while (i 10) 	{ 	printf(“%d\n”, n); 	n--; 	} 	… } Câu lệnh for - Một số lưu ý Không được thêm ; ngay sau lệnh lệnh while. Câu lệnh lặp int n = 0; while (n S Đ do 	; while (); Câu lệnh đơn hoặc Câu lệnh phức (kẹp giữa { và }) Biểu thức C bất kỳ, thường là biểu thức quan hệ cho kết quả 0 (sai) và != 0 (đúng) Câu lệnh do… while Câu lệnh lặp int i = 0; do { 	printf(“%d\n”, i); 	i++; } while (i 100); } Câu lệnh do… while - Một số lưu ý Câu lệnh do… while có thể bị lặp vô tận (loop) Câu lệnh lặp … 	int n = 1; 	do 	{ 	printf(“%d”, n); 	n--; 	} 	while (n n); while & do… while while có thể không thực hiện lần nào. do… while sẽ được thực hiện ít nhất 1 lần. Câu lệnh lặp int n = 100; while (n 10); Bài tập Nhập một số nguyên dương n (n > 0). 	Hãy cho biết: Có phải là số đối xứng? Ví dụ: 121, 12321, … Có phải là số chính phương? Ví dụ: 4, 9, 16, … Có phải là số nguyên tố? Ví dụ: 2, 3, 5, 7, … Chữ số lớn nhất và nhỏ nhất? Các chữ số có tăng dần hay giảm dần không? Câu lệnh lặp Bài tập Nhập một số nguyên dương n. Tính: S = 1 + 2 + … + n S = 12 + 22 + … + n2 S = 1 + 1/2 + … + 1/n S = 1*2*…*n = n! S = 1! + 2! + … + n! Nhập 3 số nguyên a, b và n với a, b 0) 	{ 	donvi = sogoc % 10; 	sodao = sodao*10 + donvi; 	sogoc = sogoc / 10; 	} 	if (sodao == n) printf(“Doi xung”); 	else printf(“Khong doi xung”); } Bài tập 1b Câu lệnh lặp #include void main(){ 	int n, n_can_nguyen; 	printf(“Nhap n: ”); 	scanf(“%d”, &n); 	n_can_nguyen = int(sqrt(n)); 	if (n_can_nguyen*n_can_nguyen == n) 	printf(“%d la so CP”, n); 	else 	printf(“%d khong la so CP”, n); } Bài tập 1c Câu lệnh lặp void main() { 	int n, i, souoc; 	printf(“Nhap n: ”); 	scanf(“%d”, &n); 	souoc = 0; 	for (i = 1; i 0) 	{ 	donvi = n % 10; 	n = n / 10; 	if (donvi max) max = donvi; 	} 	printf(“So NN = %d, So LN = %d”, min, max); } Bài tập 1e Câu lệnh lặp void main() { 	int n, sotruoc, sosau; 	…	// Nhập n 	sotruoc = n % 10; 	do 	{ 	sosau = sotruoc; 	n = n / 10; 	sotruoc = n % 10; 	} while (n != 0 && sotruoc = n || b >= n); 	s = 0;	 	for (i = 1; i = 50); 	s = 0; 	for (i = 2; i 0) 	{ 	donvi = n % 10; 	n = n / 10; 	printf(“%d”, donvi); 	} } Bài tập 6 Câu lệnh lặp void main() { 	int n, i, donvi, chuc; 	 	printf(“Cac so thoa yeu cau la: ”); 	for (i = 10; i USCLN của 12 và 8 là 4. Cách 2: USCLN của a & b (a khác b), ký hiệu (a, b) là: (a – b, b) nếu a > b (a, b – a) nếu b > a (12, 8) = (4, 8) = (4, 4) = 4 Câu lệnh lặp Bài tập 7 Câu lệnh lặp void main() { 	int a, b, uscln; 	printf(“Nhap a va b: ”); 	scanf(“%d%d”, &a, &b); 	if (a b) 	{ 	if (a > b) 	a = a – b; 	else 	b = b – a; 	} 	printf(“USCLN cua a va b la %d’, a); } Bài tập 8 Dãy Fibonacy: a0 a1 a2 … an-2 an-1 an Với a0 = a1 = 1, an = an-1 + an-2 Ví dụ: 1 1 2 3 5 8 13 21 … Xuất n phần tử đầu tiên của dãy Fibonacy n = 1 => 1, n = 2 => 1 1 n > 2 Lưu lại 2 phần tử trước nó là a và b Mỗi lần tính xong cập nhật lại a và b. Nên thêm 2 phần tử ảo đầu tiên là a-2, a-1 1 0 1 1 2 3 5 8 13 21 … Câu lệnh lặp Bài tập 8 Câu lệnh lặp void main() { 	int n, an, an1, an2, i; 	printf(“Nhap n: ”); 	scanf(“%d”, &n); 	an2 = 1; an1 = 0; 	printf(“%d phan tu dau tien cua day: “, n); 	for (i = 1; i <= n; i++) 	{ 	an = an2 + an1; 	printf(“%d ”, an); 	an2 = an1; 	an1 = an; 	} } 

File đính kèm:

  • pptBài giảng Nhập môn lập trình - Câu lệnh lặp.ppt