Bài giảng Lập trình cơ bản: Bài 1 cung cấp những kiến thức cơ bản về kỹ thuật lập trình nói chung và kỹ năng sử dụng công cụ lập trình C/C++ trong việc giải quyết bài; Cách thức giải quyết một bài toán trên máy tính; Công cụ, kiếm thức về việc thuật toán hóa bài toán; Ngôn ngữ lập trình C/C++;...Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình cơ bản: Bài 1 - Chu Thị Hường L P TRÌNH CƠ B N T NG QUAN Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT 1 N I DUNG M c ích c a môn h c Bài toán trên máy tính C u trúc d li u và gi i thu t Chương trình Công c l p trình Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT M C ÍCH MÔN H C Cung c p nh ng ki n th c cơ b n v k thu t l p trình nói chung và k năng s d ng công c l p trình C/C++ trong vi c gi i quy t bài. Sinh viên ư c trang b nh ng ki n th c: Cách th c gi i quy t m t bài toán trên máy tính; Công c , ki m th c v vi c thu t toán hóa bài toán; Ngôn ng l p tr.nh C/C++; Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT M C ÍCH MÔN H C Tài li u tham kh o: ào Thanh Tĩnh, Hà i Dương, Tin h c i cương, H c vi n KTQS, 2003; Tr n c Huyên, Phương pháp gi i các bài toán trong tin h c, Nhà xu t b n giáo d c 1997; Xuân Lôi, C u trúc d li u và gi i thu t, NXB Giáo d c, 1997; Robert Sedgewick, Algorithns in C++, Addison- Wesley 1992; M t s tài li u khác v l p trình cơ b n Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT BÀI TOÁN TRÊN MÁY TÍNH Phương pháp t ng quát gi i bài toán: + Xác nh bài toán; + Xác nh c u trúc d li u mô t bài toán; + Xây d ng thu t toán; + So n th o văn b n chương trình, ki m tra và hoàn thi n chương trình. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT BÀI TOÁN TRÊN MÁY TÍNH Xác nh bài toán: A B + A là gi thi t, i u ki n ban u, thông tin ã cho, ã bi t; + B là k t lu n, là m c tiêu c n t ho c cái ph i tìm, ph i làm ra khi k t thúc bài toán; + Là suy lu n, gi i pháp c n xác nh ho c chu i các thao tác c n th c hi n có ư c k t qu B t cái ã có A.. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT BÀI TOÁN TRÊN MÁY TÍNH Bài toán trên máy tính: A B + A g i là u vào (INPUT); + B g i là u ra (OUTPUT); + Là CHƯƠNG TRÌNH MÁY TÍNH. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT C U TRÚC DL VÀ GI I THU T C u trúc d li u: + C u trúc d li u là m t cách t ch c lưu tr và truy c p d li u trong máy tính sao cho nó có th ư c s d ng m t cách hi u qu (và ph thu c c vào công c l p trình). + M t s c u trúc trong C: M ng (Array), Con tr (Pointer), Xâu ký t (String), File, Stack, Queue Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT C U TRÚC DL VÀ GI I THU T Gi i thu t: Thu t toán, còn g i là gi i thu t, là m t t p h p h u h n c a các ch th hay phương cách ư c nh nghĩa rõ ràng cho vi c hoàn t t m t s s vi c t m t tr ng thái ban u cho trư c n k t qu sau cùng như ã d oán. Thu t toán là m t b các qui t c hay qui trình c th nh m gi i quy t m t v n trong m t s bư c h u h n, ho c nh m cung c p m t k t qu t m t t p h p c a các d ki n ưa vào. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT GI I THU T Ví d 1.1: Gi s có hai bình A và B ng hai lo i ch t l ng khác nhau, A ch a dung d ch Da, B ch a dung d ch Db. Gi i thu t i dung d ch Da vào bình B và Db vào A là: Yêu c u ph i có thêm m t b.nh th ba g i là bình C. Bư c 1: dung d ch Db vào bình C; Bư c 2: dung d ch Da vào bình B; Bư c 3: dung d ch Da vào bình A Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT GI I THU T Các tính ch t c a m t thu t toán: Tính chính xác: m b o k t qu tính toán hay các thao tác mà máy tính th c hi n ư c là chính xác. Tính rõ ràng: Thu t toán ph i ư c th hi n b ng các câu l nh minh b ch; các câu l nh ư c s p x p theo th t nh t nh. Tính khách quan: M t thu t toán dù ư c vi t b i nhi u ngư i trên nhi u máy tính v n ph i cho k t qu như nhau. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT GI I THU T Các tính ch t c a m t thu t toán: Tính ph d ng: Thu t toán không ch áp d ng cho m t bài toán nh t nh mà 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: Thu t toán ph i g m m t s h u h n các bư c tính toán. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT GI I THU T Trình t th c hi n các bư c c a thu t toán: Tu n t (Sequential): Các công vi c ư c th c hi n m t cách tu n t , công vi c này n i ti p công vi c kia. C u trúc l a ch n (Selection) : L a ch n m t công vi c th c hi n căn c vào m t i u ki n nào ó. Có m t s d ng như sau: C u trúc 1: N u < i u ki n> ( úng) thì th c hi n Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT GI I THU T Trình t th c hi n các bư c c a thu t toán: C u trúc l a ch n (Selection) C u trúc 2: N u < i u ki n> ( úng) thì th c hi n , Ngư c l i ( i u ki n sai) thì th c hi n C u trúc 3: Trư ng h p < i> th c hi n Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT GI I THU T Trình t th c hi n các bư c c a thu t toán: C u trúc l p (Repeating): Th c hi n l p l i m t công vi c không ho c nhi u l n căn c vào m t i u ki n nào ó. Có hai d ng như sau: L p xác nh: là lo i l p mà khi vi t chương trình, ngư i l p trình ã xác nh ư c công vi c s l p bao nhiêu l n. L p không xác nh: là lo i l p mà khi vi t chương trình ngư i l p trình chưa xác nh ư c công vi c s l p b ao nhiêu l n. S l n l p s ư c xác nh khi chương trình th c thi. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT ...