cs100:tƯ duy lẬp trÌnh cƠ bẢntại sao phải viết chương trình? • tại sao phải...
TRANSCRIPT
![Page 1: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/1.jpg)
CS100:TƯ DUY LẬP TRÌNH CƠ BẢN
Tuần 1: Mở đầu”Giới thiệu về các kiến thức tổng quát củaKhoa học máy tính và nghệ thuật lập trình”
Bộ môn Tin học - Khoa Toán TinĐại học Thăng Long
![Page 2: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/2.jpg)
Điều quan trọng khi bạn khám phá lĩnh vực này không phải làthứ hạng của mình ở đâu so với các bạn trong lớp, mà lànhững gì bạn sẽ học được sau khóa học này so với chính bạnkhi mới bắt đầu.
![Page 3: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/3.jpg)
Khoa học máy tính (Computer Science) là một ngành khoa họcnghiên cứu việc xử lý thông tin trên máy tính và ứng dụng vào giảiquyết các vấn đề của cuộc sống …
![Page 4: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/4.jpg)
VIDEO [1:09s] CEO Youtube, Susan Wojcickihttps://www.youtube.com/watch?v=y1121-De4o4
![Page 5: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/5.jpg)
VIDEO [9:33s] everyone in this country should learn how toprogram a computerhttps://www.youtube.com/watch?v=OQAnhML3Q8g
![Page 6: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/6.jpg)
input, output
![Page 7: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/7.jpg)
binary0, 1
![Page 8: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/8.jpg)
decimal0, 1, 2, …, 9
![Page 9: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/9.jpg)
ASCII
![Page 10: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/10.jpg)
algorithm - thuật toán
![Page 11: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/11.jpg)
VIDEO [4.57s] What is algorithm?https://www.youtube.com/watch?v=6hfOvs8pY1k
![Page 12: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/12.jpg)
Giả mã
1 Cầm quyển từ điển lên2 Mở trang giữa của quyển sách ra3 Tìm kiếm từ4
12 / 26
![Page 13: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/13.jpg)
Sơ đồ khối
13 / 26
![Page 14: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/14.jpg)
![Page 15: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/15.jpg)
![Page 16: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/16.jpg)
![Page 17: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/17.jpg)
![Page 18: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/18.jpg)
Tại sao phải lập trình?
• Tại sao phải lập trình? Để ra lệnh cho máy tính.
Hãy mô phỏng chuyển động của N thiênthể, theo định luật của Newton.
• Các gói phần mềm có sẵn. Nó làm đúng cái ta muốn.
• Lập trình. Yêu cầu máy tính làm mọi thứ mình muốn.
18 / 26
![Page 19: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/19.jpg)
Ngôn ngữ
• Ngôn ngữ máy. Tẻ nhạt và dễ bị lỗi.• Ngôn ngữ tự nhiên. Nhập nhằng và khó phân tích cho máy
tính.Anh ta sử dụng kiếm rất điêu luyện.Kiếm ăn bây giờ khó lắm. [wikipedia]
• Ngôn ngữ lập trình bậc cao. Một cái giá chấp nhận được.
19 / 26
![Page 20: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/20.jpg)
Tại sao phải viết chương trình?
• Tại sao phải viết chương trình?• Một kinh nghiệm tự nhiên, làm thỏa mãn, và sáng tạo• Cho phép làm những điều không thể• Đưa ra một phương pháp tư duy mới
• Câu hỏi tiếp theo. Học ngôn ngữ lập trình gì?
• Ý tưởng ngây thơ. Chỉ cần một ngôn ngữ lập trình là đủ.20 / 26
![Page 21: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/21.jpg)
Ngôn ngữ lập trình python
Đặc điểm của python• Cú pháp đơn giản.• có tốc độ xử lý nhanh hơn
so với một ngôn ngữ khác.• Thư viện phong phú.• Được biên dịch và chạy trên
tất cả các nền tảng lớn hiệnnay.
Figure 1: Guido van Rossum
21 / 26
![Page 22: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/22.jpg)
Một tập con của python
22 / 26
![Page 23: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/23.jpg)
Hello, World
#-----------------------------------------------------------------------# helloworld.py#-----------------------------------------------------------------------
import stdio
# Write 'Hello , World' to standard output.stdio.writeln('Hello , World')
#-----------------------------------------------------------------------
# python helloworld.py# Hello , World
23 / 26
![Page 24: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/24.jpg)
Lập trình python
• Đánh máy chương trình này bằng một trình soạn thảo vănbản, ghi lại với tên HelloWorld.py
• Chạy file này bằng cách gõpython HelloWorld
24 / 26
![Page 25: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/25.jpg)
Môi trường lập trình
Ubuntu 16.04 Bộ công cụ GNU Trình soạn thảo
25 / 26
![Page 26: CS100:TƯ DUY LẬP TRÌNH CƠ BẢNTại sao phải viết chương trình? • Tại sao phải viết chương trình? • Một kinh nghiệm tự nhiên, làm thỏa mãn, và](https://reader033.vdocuments.mx/reader033/viewer/2022041507/5e25fa8ee12b0b5d5e724f26/html5/thumbnails/26.jpg)
Tài liệu tham khảo
Các slides này được làm dựa trên slides khóa CS50 - ĐH Harvardvà Kevin Wayne cho lớp
26 / 26