Kĩ thuật lập trình - Các khái niệm cơ bản về lập trình

pdf 9 trang vanle 4130
Bạn đang xem tài liệu "Kĩ thuật lập trình - Các khái niệm cơ bản về lập trình", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfki_thuat_lap_trinh_cac_khai_niem_co_ban_ve_lap_trinh.pdf

Nội dung text: Kĩ thuật lập trình - Các khái niệm cơ bản về lập trình

  1. Trường Cao đẳng Kỹ thuật Công nghệ Đồng Nai Khoa Điện tử -Công nghệ thông tin NHẬP MÔN LẬP TRÌNH Phạm Đình Sắc sacvn@yahoo.com CÁC KHÁI NIỆM CƠ BẢN VỀ LẬP TRÌNH 1 ĐĐ PP SS Nội dung 1 Các khái niệm cơ bản 2 Các bước xây dựng chương trình 3 Biểu diễn thuật toán 4 Cài đặt thuật toán bằng NNLT NMLT - Các khái niệm cơ bản về lập trình 2
  2. && VCVC BBBB Các khái niệm cơ bản ™Lập trình máy tính ƒ Gọi tắt là lập trình (programming). ƒ Nghệ thuật cài đặt một hoặc nhiều thuật toán trừu tượng có liên quan với nhau bằng một ngôn ngữ lập trình để tạo ra một chương trình máy tính. ™Thuật toán ƒ Là tập hợp (dãy) hữu hạn các chỉ thị (hành động) được định nghĩa rõ ràng nhằm giải quyết một bài toán cụ thể nào đó. NMLT - Các khái niệm cơ bản về lập trình 3 && VCVC BBBB Các khái niệm cơ bản ™Ví dụ ƒ Thuật toán giải PT bậc nhất: ax + b = 0 (a, b là các số thực). Đầu vào: a, b thuộc R Đầu ra: nghiệm phương trình ax + b = 0 • Nếu a = 0 • b = 0 thì phương trình có nghiệm bất kì. • b ≠ 0 thì phương trình vô nghiệm. • Nếu a ≠ 0 • Phương trình có nghiệm duy nhất x = -b/a NMLT - Các khái niệm cơ bản về lập trình 4
  3. && VCVC BBBB Các tính chất của thuật toán ™Bao gồm 5 tính chất sau: ƒ Tính chính xác: quá trình tính toán hay các thao tác máy tính thực hiện là chính xác. ƒ Tính rõ ràng: các câu lệnh minh bạch được sắp xếp theo thứ tự nhất định. ƒ Tính khách quan: được viết bởi nhiều người trên máy tính nhưng kết quả phải như nhau ƒ Tính phổ dụng: có thể áp dụng cho một lớp các bài toán có đầu vào tương tự nhau. ƒ Tính kết thúc: hữu hạn các bước tính toán 5 ĐĐ PP SS Các bước xây dựng chương trình Xác định vấn đề Biểu diễn bằng: - bài toán • Ngôn ngữ tự nhiên •Lưu đồ -Sơđồkhối Lựa chọn • Mã giả phương pháp giải Xây dựng thuật toán/ thuật giải Cài đặt chương trình Lỗi cú pháp Hiệu chỉnh Lỗi ngữ nghĩa chương trình Thực hiện chương trình NMLT - Các khái niệm cơ bản về lập trình 6
  4. ĐĐ PP SS Sử dụng ngôn ngữ tự nhiên Đầu vào: a, b thuộc R Đầu ra: nghiệm phương trình ax + b = 0 1. Nhập 2 số thực a và b. 2. Nếu a = 0 thì 2.1. Nếu b = 0 thì 2.1.1. Phương trình vô số nghiệm 2.1.2. Kết thúc thuật toán. 2.2. Ngược lại 2.2.1. Phương trình vô nghiệm. 2.2.2. Kết thúc thuật toán. 3. Ngược lại 3.1. Phương trình có nghiệm. 3.2. Giá trị của nghiệm đó là x = -b/a 3.3. Kết thúc thuật toán. NMLT - Các khái niệm cơ bản về lập trình 7 ĐĐ PP SS Sử dụng lưu đồ -sơđồkhối Khối giới hạn Chỉ thị bắt đầu và kết thúc. Khối vào ra Nhập/Xuất dữ liệu. Khối lựa chọn Tùy điều kiện sẽ rẽ nhánh. Khối thao tác Ghi thao tác cần thực hiện. Đường đi Chỉ hướng thao tác tiếp theo. NMLT - Các khái niệm cơ bản về lập trình 8
  5. ĐĐ PP Giải thuật và lưu đồ pt: ax+b=0 SS Begin Đầu vào: a,b Nhập a,b Đầu ra: x B1: Yêu cầu nhập a,b a =0 và b=0 VSN B2: Kiểm tra: Nếu a=0 và b=0 => pt VSN Text Nếu a=0 và b pt VN Nếu a x=-b/a a=0 và b 0 X=-b/a Nghiệmnèx= 9 ĐĐ PP Giải thuật và lưu đồ pt: ax+b=0 (CT) SS Begin Đầu vào: a,b Đầu ra: x Nhập a,b B1: Yêu cầu nhập a,b a=0 b=0 VSN B2: Kiểm tra: Nếu a=0 Nếu b=0 => pt VSN VN Ngược lại(b ptVN Ngược lại(a x=-b/a X=-b/a B3: Xuất kết quả Nghiệmnèx= End 10
  6. ĐĐ PP 2 SS Giải thuật pt: ax +bx+c=0 Đầu vào: a,b,c Đầu ra: x1,x2 B1: Yêu cầu nhập a,bc B2: Kiểm tra: Nếu a=0 Nếu b=0 Nếu c=0 => pt VSN NL(c pt VN NL(b x=-c/b NL(a x1=x2=-b/(2*a) NL(d pt VN NL(d>0) => x1=(-b+sqrt(d))/(2*a) B3: Xuất kết quả x2=(-b-sqrt(d))/(2*a) 11 ĐĐ PP 2 SS Lưu đồ pt: ax +bx+c=0 Begin Nhập a,b,c d=b2-4*a*c a=0 d=0 X1=x2= b=0 X=-c/b VN d<0 c=0 VN X1= x2= VSN Nghiệmnè End 12
  7. ĐĐ PP SS Sử dụng lưu đồ -sơđồkhối Bắt đầu Đọc a,b Đ S a = 0 Đ S Tính b = 0 x = -b/a Xuất Xuất Xuất x “VSN” “VN” Kết thúc NMLT - Các khái niệm cơ bản về lập trình 13 && VCVC BBBB Sử dụng mã giả ™Vay mượn ngôn ngữ nào đó(vídụ Pascal) để biểu diễn thuật toán. Đầu vào: a, b thuộc R Đầu ra: nghiệm phương trình ax + b = 0 If a = 0 Then Begin If b = 0 Then Xuất “Phương trình vô số nghiệm” Else Xuất “Phương trình vô nghiệm” End Else Xuất “Phương trình có nghiệm x = -b/a” NMLT - Các khái niệm cơ bản về lập trình 14
  8. ĐĐ PP SS Cài đặt thuật toán bằng C/C++ #include #include void main() { int a, b; printf(“Nhap a, b: ”); scanf(“%d%d”, &a, &b); if (a == 0) if (b == 0) printf(“Phương trình VSN”); else printf(“Phương trình VN”); else printf(“x = %.2f”, -float(b)/a); } NMLT - Các khái niệm cơ bản về lập trình 15 && VCVC BBBB Bài tập lý thuyết 1. Thuật toán là gì? Trình bày các tính chất quan trọng của một thuật toán? 2. Các bước xây dựng chương trình? 3. Các cách biểu diễn thuật toán? Ưu và khuyết điểm của từng phương pháp? Cho ví dụ minh họa. NMLT - Các khái niệm cơ bản về lập trình 16
  9. && VCVC BBBB Bài tập thực hành 4. Nhập năm sinh của một người. Tính tuổi người đó. 5. Nhập 2 số a và b. Tính tổng, hiệu, tính và thương của hai sốđó. 6. Nhập tên sản phẩm, số lượng và đơn giá. Tính tiền và thuế giá trị gia tăng phải trả, biết: a. tiền = số lượng * đơn giá b. thuế giá trị gia tăng = 10% tiền NMLT - Các khái niệm cơ bản về lập trình 17 && VCVC BBBB Bài tập thực hành 7. Nhập điểm thi và hệ số 3 môn Toán, Lý, Hóa của một sinh viên. Tính điểm trung bình của sinh viên đó. 8. Nhập bán kính của đường tròn. Tính chu vi và diện tích của hình tròn đó. 9. Nhập vào số xe (gồm 4 chữ số) của bạn. Cho biết số xe của bạn được mấy nút? 10.Nhập vào 2 số nguyên. Tính min và max của hai sốđó. NMLT - Các khái niệm cơ bản về lập trình 18