intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình cơ bản: Bài 4 - TS. Ngô Quốc Việt

Chia sẻ: You Can | Ngày: | Loại File: PDF | Số trang:38

73
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Lập trình cơ bản - Bài 4 trình bày kiến thức về ltrình với cấu trúc lặp. Các nội dung chính trong bài giảng này gồm: Nhắc lại các toán tử BIT; ý nghĩa, cách hoạt động của vòng lặp; lặp với lệnh for; các lệnh ảnh hưởng đến lặp: break, continue; lặp với lệnh while; lặp với lệnh do… while; còng lặp lồng nhau và so sánh các lệnh lặp.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình cơ bản: Bài 4 - TS. Ngô Quốc Việt

  1. LẬP TRÌNH VỚI CẤU TRÚC LẶP LÊ ĐỨC LONG-NGÔ QUỐC VIỆT 2011
  2. NỘI DUNG 1. Nhắc lại các toán tử BIT 2. Ý nghĩa, cách hoạt động của vòng lặp 3. Lặp với lệnh for 4. Các lệnh ảnh hưởng đến lặp: break, continue. 5. Lặp với lệnh while. 6. Lặp với lệnh do… while. 7. Vòng lặp lồng nhau và so sánh các lệnh lặp Ngô Quốc Việt-Lập trình cơ bản 2
  3. NHẮC LẠI CÁC TOÁN TỬ BIT  Số nhị phân: một vị trí nhớ lưu trữ 8 bits. Ký hiệu số nhị phân 01100100b. Nguồn: O’Reilly 2003 Ngô Quốc Việt-Lập trình cơ bản 3
  4. Toán tử BIT Ngô Quốc Việt-Lập trình cơ bản 4
  5. Toán tử & BIT  Kết quả của 45 & 71 là 41 ?.  Cần phân biệt && và &.  Bài tập ngắn: viết hàm kiểm tra chẵn lẻ dựa trên &. Ngô Quốc Việt-Lập trình cơ bản 5
  6. Toán tử OR BIT (|) Ngô Quốc Việt-Lập trình cơ bản 6
  7. Toán tử XOR BIT (^) Ngô Quốc Việt-Lập trình cơ bản 7
  8. Toán tử left và right shift Ngô Quốc Việt-Lập trình cơ bản 8
  9. Ý nghĩa và sử dụng lệnh lặp  Lặp: thực hiện một thao tác / hành động một số lần nhất định. Ví dụ: hít đất 20 cái; hát điệp khúc 2 lần; chạy quanh sân 10 vòng; Tính dãy Fibonacci với n = 100; Tính giai thừa của 1000;  Viết 100 lệnh hay 1000 lệnh “giống nhau”?  Nnlt trình phải hỗ trợ làm điều này  các lệnh lặp.  Lệnh lặp thực hiện một khối lệnh với số lần lặp nhất định, hoặc khi chưa thoả điều kiện nào đó. Ngô Quốc Việt-Lập trình cơ bản 9
  10. Xét bài toán tính n!  Input: số nguyên dương n  Output: giá trị của n! Thuật giải thông thường  Bước 1: Gán gt = 1  Bước 2.1: Gán gt = gt * 1 = 1  Bước 2.2: Gán gt = gt * 2 = 1 * 2  Bước 2.3: Gán gt = gt * 3 = 1 * 2 * 3  Bước 2.4: Gán gt = gt * 4 = 1 * 2 * 3 * 4  ….  Bước 2.i: Gán gt = gt * i = 1 * 2 * 3 * 4 * … * i  …  Bước 2.n: Gán gt = gt * n = 1 * 2 * 3 * 4 * … n  Xuất giá trị gt Ngô Quốc Việt-Lập trình cơ bản 10
  11. Phân biệt các lệnh lặp  Lệnh lặp for: số lần lặp biết trước.  Lệnh lặp while: lặp khi điều kiện lặp còn thỏa hoặc lặp theo số lần biết trước (giống for).  Lệnh lặp do... while: giống lệnh lặp while nhưng điều kiện lặp đặt ở cuối vòng lặp.  Lệnh lặp foreach: lặp theo các đối tượng trong một tập hợp (khảo sát sau). Ngô Quốc Việt-Lập trình cơ bản 11
  12. Cấu trúc lặp for  Số lần lặp xác định trước. Dùng một biến đếm để xác định số lần lặp đã làm Ngô Quốc Việt-Lập trình cơ bản 12
  13. Cấu trúc lặp for  Trường hợp lặp 1 câu lệnh for(khởi tạo các biến đếm; kiểm tra số lần lặp; cập nhật các biến đếm số lần lặp) câu lệnh;  Trường hợp lặp nhiều câu lệnh for(khởi tạo các biến đếm; kiểm tra số lần lặp; cập nhật các biến đếm số lần lặp) { lệnh 1; lệnh 2; lệnh 3; // các lệnh trong khối lệnh } Ngô Quốc Việt-Lập trình cơ bản 13
  14. Cấu trúc lặp for  “khởi tạo các biến đếm”: các lệnh chỉ được chạy đúng một lần trong lệnh for.  “kiểm tra số lần lặp”  biểu thức logic: được kiểm tra khi mỗi khi khối lệnh được thực hiện xong.  “cập nhật các biến đếm số lần lặp”  các lệnh gán làm tăng/giảm giá trị biến đếm. Ngô Quốc Việt-Lập trình cơ bản 14
  15. Cấu trúc lặp for-ví dụ #include "stdio.h" #include "conio.h" void main() { int n; printf("Nhap so nguyen n:"); scanf("%i",&n); int gt = 1; for(int i = 1; i
  16. Cấu trúc lặp for-ví dụ Tính tổng các số lẻ từ 0 đến n (giá trị nhập vào) #include #include void main(void) { int iDem, iN, iTongLe = 0; printf("Nhap vao so n: \n"); scanf("%d", &iN); iTongLe = 0; for(iDem = 0; iDem
  17. Cấu trúc lặp for-ví dụ Lặp với biến đếm giảm - Ví dụ tính tổng các số lẻ #include #include void main(void) { int iDem, iN, iTongLe = 0; printf("Nhap vao so n: \n"); scanf("%d", &iN); iTongLe = 0; for(iDem = iN; iDem > 0; iDem--) { if (iDem % 2 != 0) //neu iDem la so le iTongLe= iTongLe + iDem; } printf("Tong: %d", iTongLe); getch (); } Ngô Quốc Việt-Lập trình cơ bản 17
  18. Lệnh break trong vòng lặp  Nhu cầu cần thoát khỏi vòng lặp khi số lần lặp chưa đủ hay “điều kiện ngừng” chưa thoả mãn.  Cần thoát ra khi có “lỗi” hay “bất thường” trong vòng lặp.  Ví dụ: cần đánh trứng 100 lần. Tuy nhiên ngừng đánh trứng nếu “chén vỡ”. for(int i = 0; i < 100; i ++) { if(bChenVo == true) break; //Tiep tục đánh trứng } Ngô Quốc Việt-Lập trình cơ bản 18
  19. Lệnh break trong vòng lặp  Lệnh break cần được kèm với lệnh if. Ra khỏi false Điều lặp kiện lặp Các lệnh trước lệnh break true Điều kiện break false Các lệnh sau break Ngô Quốc Việt-Lập trình cơ bản 19
  20. Lệnh break trong vòng lặp  Ví dụ: nhập N (input từ bàn phím) số nguyên từ bàn phím. Nếu gặp số zero thì ngừng. Tính tổng các số đã nhập. #include #include void main(void) { int in, itong = 0;, iN printf("Nhap vao so luong so nguyen: \n"); scanf("%d", &iN); for(int i = 0; i < iN; i ++) { printf("Nhap vao 1 so nguyen: "); scanf("%d", &in); if (in == 0) break; //in = 0 thoat vong lap itong += in; } printf("Tong: %d.\n", itong); getch(); } Ngô Quốc Việt-Lập trình cơ bản 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2