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

Bài giảng Cơ sở lập trình - ĐH Thương Mại

Chia sẻ: Trần Văn Tuấn | Ngày: | Loại File: PDF | Số trang:0

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

Mục tiêu chính của Bài giảng Cơ sở lập trình là: Cung cấp các kiến thức cơ bản về thiết kế thuật toán và lập trình trên máy tính điện tử, làm quen với một số nguyên tắc và công cụ lập trình cơ bản.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cơ sở lập trình - ĐH Thương Mại

8/15/2017<br /> <br /> <br /> <br /> <br /> <br /> Số tín chỉ: 3 (30,15)<br /> Mã HP: INFO0621<br /> Đánh giá:<br /> <br /> <br /> <br /> Mục tiêu: Cung cấp các kiến thức cơ bản về<br /> thiết kế thuật toán và lập trình trên máy tính<br /> điện tử, làm quen với một số nguyên tắc và<br /> công cụ lập trình cơ bản<br /> <br />  ĐCC: 0.1; ĐTH: 0.3; ĐT: 06<br /> Số tín chỉ: 3<br /> Bộ môn: Tin học<br /> <br /> TM<br /> <br /> H<br /> <br /> D<br /> LT<br /> <br /> Chương 1. Tổng quan về cơ sở lập trình<br /> <br /> 6<br /> <br /> 6<br /> <br /> 0<br /> <br /> Chương 2. Các thành phần cơ sở<br /> <br /> 13<br /> <br /> 9<br /> <br /> 4<br /> <br /> Chương 3. Mảng, xâu và con trỏ<br /> <br /> 9<br /> <br /> 5<br /> <br /> 4<br /> <br /> Chương 4. Hàm<br /> <br /> 9<br /> <br /> 4<br /> <br /> 5<br /> <br /> Chương 5. Kiểu dữ liệu có cấu trúc<br /> <br /> 8<br /> <br /> 6<br /> <br /> 2<br /> <br /> Tổng<br /> <br /> 45<br /> <br /> 30<br /> <br /> 15<br /> <br /> Bắt buộc<br /> <br /> [1].TS Nguyễn Thị Thu Thủy. Giáo trình cơ sở lập trình.<br /> NXB Thống kế, 2014.<br /> [2]. Phạm Văn Ất. Kỹ thuật lập trình C. NXB GTVT, 2008.<br /> [3]. Phạm Hồng Thái. Cơ sở lập trình. NXB ĐHQG, 2007.<br /> <br /> TH<br /> <br /> <br /> <br /> U<br /> <br /> Số tiết<br /> <br /> M<br /> <br /> _T<br /> <br /> Chương<br /> <br /> Khuyến khích<br /> <br /> [1]. Robert Sedgewick. Cẩm nang thuật toán. NXB KHKT,<br /> 1994.<br /> [2]. Quách Tuấn Ngọc. Ngôn ngữ lập trình C. NXB Thống<br /> kế, 2003.<br /> [3]. www.cprogramming.com/tutorial.html<br /> <br /> 1<br /> <br /> 8/15/2017<br /> <br /> 1.1. Thuật toán<br /> <br /> 1.1.1 Khái niệm<br /> <br /> 1.2. Sơ đồ khối<br /> <br /> 1.1.2 Tính chất của thuật toán<br /> <br /> 1.3. Chương trình và ngôn ngữ lập trình<br /> <br /> 1.1.3 Ví dụ<br /> <br /> 1.4. Các phương pháp lập trình<br /> <br /> 7-2010<br /> <br /> H<br /> <br /> D<br /> <br /> 1.5. Kỹ thuật thiết kế chương trình<br /> <br /> Cơ sở lập trình<br /> <br /> 5<br /> <br /> 7-2010<br /> <br /> Cơ sở lập trình<br /> <br /> 6<br /> <br /> TM<br /> Cơ sở lập trình<br /> <br /> 7<br /> <br />  Tính vào (input)<br />  Tính ra (output)<br /> <br /> U<br /> <br /> 7-2010<br /> <br /> M<br /> <br /> _T<br /> Khái niệm 1: Thuật toán là một dãy hữu hạn các<br /> bước được sắp xếp theo một trật tự xác định,<br /> mỗi bước mô tả chính xác các phép toán hoặc<br /> hành động cần thực hiện, để giải quyết một vấn<br /> đề.<br /> Khái niệm 2: Thuật toán là một dãy hữu hạn các<br /> thao tác, sắp xếp theo một trật tự xác định, sau<br /> khi thực hiện, từ Input ta nhận được Output cần<br /> tìm.<br /> <br />  Tính đơn định (xác định / đơn nghĩa)<br />  Tính đúng đắn<br /> <br />  Tính dừng (tính kết thúc / tính đóng)<br />  Tính phổ dụng<br />  Tính khả thi/hiệu quả<br /> <br /> 7-2010<br /> <br /> Cơ sở lập trình<br /> <br /> 8<br /> <br /> 2<br /> <br /> 8/15/2017<br /> <br /> <br /> <br /> Yêu cầu: Xây dựng thuật toán để giải phương trình:<br /> ax + b=0<br /> Trong đó a,b là các số thực được nhập vào từ bàn<br /> phím<br />  Phân tích:<br /> Input: a, b<br /> Output: kết luận về x<br /> Có 3 khả năng xảy ra:<br /> - Có một nghiệm duy nhất: x = -b/a khi a≠0.<br /> - Phương trình vô nghiệm khi a=0 và b≠0.<br /> 7-2010<br /> - Phương Cơ sở lập có vô số nghiệm khi a=0 và b=0. 9<br /> trình trình<br /> <br /> <br /> Thuật toán:<br /> <br /> TM<br /> <br /> H<br /> <br /> D<br /> <br /> + Bước 1: Nhập a, b.<br /> + Bước 2: Kiểm tra a≠0?<br /> Nếu đúng chuyển sang bước 3.<br /> Nếu sai chuyển sang bước 5.<br /> + Bước 3: Tính nghiệm x = -b/a.<br /> + Bước 4: In x rồi chuyển bước 8.<br /> + Bước 5: Kiểm tra b≠0?<br /> Nếu đúng chuyển sang bước 6.<br /> Nếu sai chuyển sang bước 7.<br /> + Bước 6: In “PTVN”, rồi chuyển bước sang 8.<br /> + Bước 7: In “PTCVSN”.<br /> + Bước 8: Kết thúc.<br /> <br /> M<br /> <br /> _T<br /> Khái niệm 1: Sơ đồ khối là tập hợp các ký hiệu và<br /> <br /> 1.2.1 Khái niệm<br /> <br /> U<br /> <br /> quy tắc dùng để biểu diễn thuật toán<br /> Khái niệm 2: Sơ đồ khối là cách thể hiện thuật toán<br /> bằng các hình khối hình học nối với nhau bằng đường<br /> đi có hướng<br /> <br /> 1.2.2 Các cấu trúc điều khiển<br /> 1.2.3 Ví dụ<br /> <br /> Các thành phần:<br /> <br /> thoi: thể hiện thao tác so sánh<br /> chữ nhật: thể hiện các phép tính toán<br /> Hình bình hành: thể hiện thao tác nhập xuất dữ liệu<br /> Hình oval: thể hiện sự bắt đầu/kết thúc của thuật toán.<br /> Các mũi tên: thể sở lập trình<br /> 7-2010<br /> Cơ hiện trình tự thực hiện các thao tác 12<br /> Hình<br /> Hình<br /> <br /> 7-2010<br /> <br /> Cơ sở lập trình<br /> <br /> 11<br /> <br /> 3<br /> <br /> 8/15/2017<br /> <br /> <br /> <br /> Các khối<br /> <br /> <br /> <br /> <br /> <br /> BĐ<br /> <br /> Sơ đồ khối dạng tuần tự: Là sơ đồ khối thể hiện thuật toán<br /> gồm n khối mà khi thực hiện thuật toán với một bộ dữ liệu cụ<br /> thể sẽ lần lượt thực hiện từ khối đầu tiên đến khối cuối cùng<br /> theo thứ tự viết của nó.<br /> Sơ đồ khối dạng rẽ nhánh: Là sơ đồ khối thể hiện thuật toán<br /> gồm n nhánh mà khi thực hiện thuật toán với một bộ dữ liệu<br /> cụ thể sẽ thực hiện một trong n nhánh mà thôi.<br /> <br /> <br /> <br /> Sơ đồ khối dạng chu trình: Là sơ đồ khối thể hiện thuật toán<br /> gồm n khối mà khi thực hiện thuật toán với một bộ dữ liệu cụ<br /> thể sẽ có một số khối lặp đi lặp lại nhiều lần phụ thuộc vào<br /> một điều kiện nào đó vẫn thỏa mãn.<br /> <br /> X=-b/a<br /> a=0<br /> <br /> Khối tính toán<br /> Khối bắt đầu<br /> <br /> Khối kiểm tra điều kiện<br /> <br /> D<br /> <br /> Vào/ra a<br /> <br /> KT<br /> <br /> Hướng thực hiện.<br /> <br /> Khối kết thúc<br /> <br /> H<br /> <br /> 7-2010<br /> <br /> Khối Vào/Ra<br /> <br /> Cơ sở lập trình<br /> <br /> 13<br /> <br /> 7-2010<br /> <br /> Cơ sở lập trình<br /> <br /> 14<br /> <br /> TM<br /> M<br /> <br /> _T<br /> a) Cấu trúc tuần tự:<br /> <br /> U<br /> <br /> Có 4 dạng cơ bản.<br /> Dạng thứ nhất:<br /> Đ<br /> <br /> CV2<br /> <br /> Dạng thứ hai:<br /> <br /> S<br /> <br /> CV1<br /> <br /> ĐK<br /> <br /> CV1<br /> <br /> S<br /> <br /> Đ<br /> <br /> ĐK<br /> <br /> CV1<br /> <br /> CV2<br /> <br /> CV2<br /> CV3<br /> <br /> 4<br /> <br /> 8/15/2017<br /> <br /> Dạng thứ ba:<br /> ĐK1<br /> <br /> Dạng thứ tư:<br /> <br /> S<br /> <br /> CV1<br /> <br /> S<br /> <br /> CV2<br /> <br /> Đ<br /> <br /> Đ<br /> ĐK2<br /> <br /> ĐK2<br /> <br /> D<br /> <br /> Đ<br /> <br /> S<br /> <br /> CVn<br /> <br /> Dạng thứ hai:<br /> BĐK=n1<br /> <br /> BĐK=n1<br /> <br /> CV2<br /> <br /> CV lặp<br /> S<br /> <br /> ĐK lặp<br /> <br /> BĐK=BĐK +n2<br /> <br /> S<br /> <br /> CV lặp<br /> <br /> Đ<br /> <br /> CVn<br /> <br /> Đ<br /> <br /> CVn+1<br /> <br /> CVn+2<br /> <br /> H<br /> <br /> CVn+1<br /> <br /> CV1<br /> <br /> Đ<br /> <br /> ĐKn<br /> <br /> ĐKn<br /> <br /> S<br /> <br /> Có 2 dạng cơ bản.<br /> Dạng thứ nhất:<br /> <br /> ...<br /> <br /> Đ<br /> <br /> ...<br /> <br /> ĐK1<br /> <br /> S<br /> <br /> ĐK lặp<br /> <br /> Đ<br /> <br /> BĐK=BĐK +n2<br /> <br /> S<br /> <br /> TM<br /> M<br /> <br /> _T<br /> BĐ<br /> <br /> Xây dựng sơ đồ khối mô tả thuật toán giải phương trình:<br /> ax + b=0<br /> Trong đó a,b là các số thực được nhập vào từ bàn phím<br /> <br /> Nhập a, b<br /> <br /> U<br /> a≠0<br /> <br /> S<br /> <br /> Đ<br /> <br /> x= -b/a<br /> <br /> In x<br /> <br /> b≠0<br /> <br /> S<br /> <br /> Đ<br /> In “PTVN”<br /> <br /> In “PTCVSN”<br /> <br /> 19<br /> <br /> Cơ sở lập trình<br /> <br /> 8/15/<br /> 2017<br /> <br /> KT<br /> <br /> 5<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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