Bài giảng Nhập môn lập trình - Chương 3: Giới thiệu về các cấu trúc điều khiển phần Cấu trúc điều khiển lặp giới thiệu tới người đọc các cấu trúc điều khiển lặp while, cấu trúc điều khiển lặp do while, cấu trúc điều khiển lặp for,... Mời các bạn cùng tham khảo.
Nhập mơn lập trình Trình bày: Nguyễn Sơn Hồng Quốc Email: nshquoc@fit.hcmus.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Cấu trúc điều khiển lặp while Cấu trúc điều khiển lặp while Cấu trúc điều khiển lặp for Các thị lệnh vòng lặp (break, continue, return) Các vấn đề tìm hiểu mở rộng kiến thức nghề nghiệp Thuật ngữ đọc thêm tiếng Anh CuuDuongThanCong.com https://fb.com/tailieudientucntt CuuDuongThanCong.com https://fb.com/tailieudientucntt Cấu trúc điều khiển lặp while while (điều_kiện_lặp) { Lệnh 1; Lệnh 2; … Lệnh n; } CuuDuongThanCong.com https://fb.com/tailieudientucntt Lưu đồ thuật tốn vòng lặp while Sai Đúng Lệnh Lệnh … Lệnh n CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ (tính S = 1+2+…+n) • Viết chương trình nhập vào số n, tính tổng S = + + … + n CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ (tính S = 1+2+…+n) (Lưu đồ) Bắt đầu Nhập 𝑛 𝑖=1 𝑆 =0 Sai 𝑖 ≤𝑛 Xuất S Đúng 𝑆 = 𝑆+𝑖 𝑖=𝑖+1 Kết thúc CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ (tính S = 1+2+…+n) (Chương trình) #include void main() { int n, i, S; printf("Nhap n: "); scanf("%d", &n); i = 1; 10 S = 0; 11 12 while (i 10000 • Vẽ lưu đồ viết chương trình tìm số nguyên dương 𝑛 nhỏ cho + + ⋯ + 𝑛 > 10000 CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ : Tìm n nhỏ với 1+2+…+n>10000 #include void main() { int S = 0, n = 0; while (S = n) 14 break; 15 } 16 printf("Tong cac so duong le nho hon %d la %d\n", n, s); 34 17.} CuuDuongThanCong.com https://fb.com/tailieudientucntt Câu lệnh continue • Ngược lại với câu lệnh break, câu lệnh continue dùng để bắt đầu vòng cấu trúc điều khiển lặp chứa • Khi gặp câu lệnh continue bên thân toán tử for, chương trình thực bước phần "phân tích hoạt động cấu trúc lặp for" 35 CuuDuongThanCong.com https://fb.com/tailieudientucntt Câu lệnh continue • Khi gặp câu lệnh continue bên thân while while, chương trình thực bước phần "phân tích hoạt động cấu trúc lặp while" • Ghi chú: Câu lệnh continue áp dụng cho cấu trúc điều khiển lặp không áp dụng cho cấu trúc điều khiển chọn switch 36 CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ lệnh continue • In số lẻ nhỏ 100, trừ số 5, 7, 93 #include void main() { int i; for (i = 1; i < 100; i += 2) { if (i == || i == || i == 93) 10 continue; 11 printf("%5d", i); 12 } 13.} CuuDuongThanCong.com https://fb.com/tailieudientucntt 37 Câu lệnh return • Trả dòng điều khiển mà nơi gọi, lệnh return theo sau biểu thức biểu thức đánh giá giá trị trả cho nơi gọi hàm Khi return gọi mà khơng có biểu thức kèm giá trị trả khơng xác định • Câu lệnh return khơng khỏi vòng lặp mà ln khỏi hàm mà chứa 38 CuuDuongThanCong.com https://fb.com/tailieudientucntt Câu lệnh return(Ví dụ) • Tính tổng số lẻ số nguyên dương n #include void main() { int n, i, s; printf("Nhap n: "); scanf("%d", &n); s = 0; if (n < 0) 10 { 11 printf("n khong phai so nguyen duong"); 12 return; 13 } 14 for (i = 1; i < n; i = i + 2) 15 s = s + i; 16 printf("Tong cac so duong le nho hon %d la %d\n", n, s); 39 17.} CuuDuongThanCong.com https://fb.com/tailieudientucntt 40 CuuDuongThanCong.com https://fb.com/tailieudientucntt Tìm hiểu thêm • Tránh nhập nhằng khó hiểu mã nguồn • Các thị đặc biệt bao hàm cấu trúc điều khiển • Cấu trúc điều khiển cấp cao NNLT • Sự khác biệt, tương đồng NNLT 41 CuuDuongThanCong.com https://fb.com/tailieudientucntt 42 CuuDuongThanCong.com https://fb.com/tailieudientucntt Thuật ngữ tiếng Anh • • • • • • • • • block: khối lệnh branching: rẽ nhánh, phân nhánh control structures: cấu trúc điều khiển global variables: biến toàn cục instruction: lệnh local variables: biến cục loop: vòng lặp program: chương trình variable: biến 43 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài đọc thêm tiếng Anh • Thinking in C, Bruce Eckel, E-book, 2006 • Theory and Problems of Fundamentals of Computing with C++, John R.Hubbard, Schaum’s Outlines Series, McGraw-Hill, 1998 44 CuuDuongThanCong.com https://fb.com/tailieudientucntt ... (tính S = 1+2+…+n) • Viết chương trình nhập vào số n, tính tổng S = + + … + n CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ (tính S = 1+2+…+n) (Lưu đồ) Bắt đầu Nhập