Bài giảng Nhập môn lập trình - Chương 1: Tổng quan về lập trình - Nguyễn Minh Huy
Tꢀng quan vꢁ lꢂp trình
GV. Nguyꢀn Minh Huy
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
1
Nꢃi dung
ꢀ Giꢄi thiꢅu môn hꢆc.
ꢀ Khái niꢅm cơ bꢇn vꢈ lꢁp trình.
ꢀ Các ngôn ngꢉ lꢁp trình.
ꢀ Môi trưꢊng lꢁp trình.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
2
Nꢃi dung
ꢀ Giꢄi thiꢅu môn hꢆc.
ꢀ Khái niꢃm cơ bꢄn vꢁ lꢂp trình.
ꢀ Các ngôn ngꢉ lꢁp trình.
ꢀ Môi trưꢊng lꢁp trình.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
3
Khái niꢅm cơ bꢇn vꢈ lꢁp trình
ꢀ Khái niꢅm lꢁp trình:
ꢀ Bài toán:
ꢁ Dꢋy cách tính tꢌng sꢍ lꢄn nhꢎt và sꢍ nhꢏ nhꢎt giꢉa 7, 1, 9.
ꢁ Ngưꢊi hꢆc biꢐt phép toán:
ꢁ Cꢃng hai sꢍ .
ꢁ So sánh hai sꢍ .
ꢁ Hãy liꢅt kê các bưꢄc dꢋy ngưꢊi hꢆc.
ꢀ Các bưꢄc dꢋy:
ꢁ B1: so sánh 7 và 1 => 7 lꢄn hơn.
ꢁ B2: so sánh 7 và 9 => 9 lꢄn hơn => 9 lꢄn nhꢎt.
ꢁ B3: so sánh 7 và 1 => 1 nhꢏ hơn.
ꢁ B4: so sánh 1 và 9 => 1 nhꢏ hơn => 1 nhꢏ nhꢎt.
ꢁ B5: cꢃng 9 và 1.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
4
Khái niꢅm cơ bꢇn vꢈ lꢁp trình
ꢀ Lꢁp trình là gì?
ꢀ Máy tính là mꢃt “đꢑa trꢒ ngꢍc”.
ꢀ Cꢓn phꢇi dꢋy máy tính làm viꢅc.
ꢀ Mô tꢇ cꢔ thꢕ các bưꢄc giꢇi bài toán.
ꢂ Lꢁp trình.
ꢀ Bꢇng mô tꢇ ꢃ chương trình máy tính.
Lꢁp trình
Chương trình
Máy tính
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
5
Khái niꢅm cơ bꢇn vꢈ lꢁp trình
ꢀ Chương trình máy tính:
ꢀ Máy tính hiꢕu sꢖn mꢃt sꢍ lꢅnh cơ bꢇn.
ꢀ Dꢋy máy tính tꢗ nhꢉng lꢅnh này.
ꢀ Chương trình:
ꢁ Mꢃt tꢁp hꢘp các lꢅnh cơ bꢇn.
ꢁ Sꢙp xꢐp theo trình tꢚ.
ꢁ Giꢇi quyꢐt mꢃt vꢎn đꢈ.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
6
Khái niꢅm cơ bꢇn vꢈ lꢁp trình
ꢀ Lꢁp trình viên:
ꢀ Ngưꢊi tꢋo ra chương trình máy tính.
ꢀ Programmer vs. developer vs. software engineer.
ꢀ Ai phù hꢘp làm lꢁp trình viên?
ꢁ Ngưꢊi thông minh.
ꢁ Ngưꢊi có đꢓu óc logic.
ꢁ Ngưꢊi thích loay hoay tìm tòi.
ꢁ Phꢔ nꢉ!
Ada Lovelace
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
7
Khái niꢅm cơ bꢇn vꢈ lꢁp trình
ꢀ Các loꢋi mã lꢁp trình:
ꢀ Mã máy (machine code):
ꢁ Các dãy sꢍ ‘0’ và ‘1’.
ꢁ Máy tính hiꢕu, khó hꢆc!
ꢀ Mã giꢇ (pseudo code):
B1: cꢃng a và b.
ꢁ Diꢀn giꢇi ngꢙn bꢛng ngôn ngꢉ tꢚ nhiên.
B2: nhân a và c.
B3: so sánh c và d.
ꢞ
ꢁ Ngưꢊi hiꢕu, máy không hiꢕu!
ꢀ Mã nguꢜn (source code):
ꢁ Ngôn ngꢉ lꢁp trình.
ꢁ Các lꢅnh đơn giꢇn dꢀ hiꢕu.
ꢁ C, Java, Python, ...
ꢁ Trình biên dꢝch (compiler):
ꢁ Chương trình dꢝch mã nguꢜn ꢃ mã máy.
ꢁ Ai viꢐt trình biên dꢝch?
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
8
Khái niꢅm cơ bꢇn vꢈ lꢁp trình
ꢀ Quy trình lꢁp trình:
ꢀ Viꢅt chương trình (write):
ꢁ Viꢐt mã nguꢜn.
ꢁ Dùng ngôn ngꢉ lꢁp trình.
ꢀ Dꢆch chương trình (compile):
ꢁ Mã nguꢜn ꢃ mã máy.
ꢁ Dùng trình biên dꢝch.
ꢀ Chꢇy chương trình (run):
ꢁ Thꢚc hiꢅn mã máy đã dꢝch.
ꢀ Sꢈa lꢉi chương trình (debug):
ꢁ Tìm lꢟi sai trong mã nguꢜn.
ꢁ Dùng trình gꢠ rꢍi (debugger).
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
9
Nꢃi dung
ꢀ Giꢄi thiꢅu môn hꢆc.
ꢀ Khái niꢅm cơ bꢇn vꢈ lꢁp trình.
ꢀ Các ngôn ngꢊ lꢂp trình.
ꢀ Môi trưꢊng lꢁp trình.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
10
Các ngôn ngꢉ lꢁp trình
ꢀ Ngôn ngꢉ lꢁp trình:
ꢀ Ngôn ngꢉ trung gian giꢉa ngưꢊi và máy.
ꢀ Chính xác và rõ ràng.
ꢀ Hꢆc ngôn ngꢉ lꢁp trình là chuyꢅn nhꢏ!!
ꢁ Ngôn ngꢉ = tꢗ vꢚng + ngꢉ pháp.
ꢁ Hꢆc tư duy lꢁp trình mꢄi khó!!
ꢀ Dꢝch chương trình:
ꢁ Trình biên dꢝch (compiler):
ꢁ Dꢝch sꢖn ra mã máy.
ꢁ Thꢚc hiꢅn mã máy mꢟi lꢓn chꢋy.
ꢁ Trình thông dꢝch (interpreter):
ꢁ Không dꢝch sꢖn.
ꢁ Dꢝch tꢗng dòng mã nguꢜn trꢚc tiꢐp mꢟi lꢓn chꢋy.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
11
Các ngôn ngꢉ lꢁp trình
ꢀ Thꢊi kỳ đꢓu:
ꢀ 1950s: UNIVAC, IBM 701.
ꢀ Ngôn ngꢉ cꢎp thꢎp:
ꢁ Ngôn ngꢉ thꢐ hꢅ 1 ꢃ mã máy.
ꢁ Ngôn ngꢉ thꢐ hꢅ 2 ꢃ hꢘp ngꢉ.
ꢀ Đꢡc điꢕm:
ꢁ Tꢁp lꢅnh đơn giꢇn.
ꢁ Gꢓn ngôn ngꢉ máy ꢃ khó hꢆc.
ꢁ Lꢁp trình tꢍn công sꢑc.
ꢁ Chương trình nhꢏ gꢆn, nhanh.
ꢁ Can thiꢅp sâu hꢅ thꢍng.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
12
Các ngôn ngꢉ lꢁp trình
ꢀ Thꢊi kỳ phát triꢕn:
ꢀ Nhꢉng năm 1960s – 1970s.
ꢀ E. Dijkstra ꢃ lꢁp trình cꢎu trúc.
ꢀ Ngôn ngꢉ cꢎp cao:
ꢁ Ngôn ngꢉ thꢐ hꢅ 3: FORTRAN, ALGOL, C, Pascal, ...
ꢀ Đꢡc điꢕm:
ꢁ Tꢁp lꢅnh mꢠ rꢃng, chꢡt chꢢ.
ꢁ Gꢓn ngôn ngꢉ tꢚ nhiên ꢃ dꢀ hꢆc.
ꢁ Lꢁp trình đꢣ tꢍn công sꢑc.
ꢁ Chương trình lꢄn hơn, chꢁm hơn.
ꢁ Không can thiꢅp quá sâu hꢅ thꢍng.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
13
Các ngôn ngꢉ lꢁp trình
ꢀ Hiꢅn nay:
ꢀ Trên 1000 ngôn ngꢉ lꢁp trình!!
ꢀ Hưꢄng phát triꢕn:
ꢁ Lꢁp trình logic (thꢐ hꢅ 4): Prolog, lisp, SQL, ...
ꢁ Lꢁp trình sꢚ kiꢅn (giao diꢅn): Visual Basic, Visual C++, ...
ꢁ Hưꢄng đꢍi tưꢘng: C++, Java, C#, ...
ꢁ Write once, run anywhere: Java, C#, ...
ꢁ Thiꢐt bꢝ di đꢃng: C++, Java, C#, ObjectiveꢂC, ꢞ
ꢀ Đꢡc điꢕm:
ꢁ Dꢀ hꢆc, dꢀ sꢤ dꢔng.
ꢁ Chương trình lꢄn.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
14
Nꢃi dung
ꢀ Giꢄi thiꢅu môn hꢆc.
ꢀ Khái niꢅm cơ bꢇn vꢈ lꢁp trình.
ꢀ Các ngôn ngꢉ lꢁp trình.
ꢀ Môi trưꢋng lꢂp trình.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
15
Môi trưꢊng lꢁp trình
ꢀ Môi trưꢊng lꢁp trình là gì?
ꢀ Viꢐt chương trình bꢛng gì?
ꢁ Giꢎy, viꢐt?
ꢁ Chương trình soꢋn thꢇo (editor).
ꢀ Dꢝch chương trình thꢐ nào?
ꢁ Trình biên dꢝch (compiler).
ꢀ Chꢋy chương trình ra sao?
ꢁ Run program trong Windows Explorer?
ꢀ Sꢤa lꢟi chương trình?
ꢁ Dò tꢗng dòng mã nguꢜn?
ꢁ Trình gꢠ rꢍi (debugger).
ꢂ Tích hꢘp Editor + Compiler + Runner + Debugger.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
16
Môi trưꢊng lꢁp trình
ꢀ Môi trưꢊng lꢁp trình C++:
ꢀ Microsoft Visual Studio 1998, 2005, 2010, 2012, ꢞ
ꢀ Demo:
ꢁ Soꢋn thꢇo chương trình.
ꢁ Tꢋo empty project.
ꢁ Soꢋn thꢇo trên file main.cpp.
ꢁ Dꢝch chương trình.
ꢁ Ctrl + Shift + B.
ꢁ Chꢋy chương trình.
ꢁ Ctrl + F5.
ꢁ Sꢤa lꢟi chương trình.
ꢁ Đꢡt break point F9, chꢋy debug F5.
ꢁ Chꢋy tꢗng dòng F10.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
17
Tóm tꢙt
ꢀ Lꢁp trình:
ꢀ Mô tꢇ cꢔ thꢕ các bưꢄc giꢇi quyꢐt vꢎn đꢈ.
ꢀ Chương trình:
ꢀ Bꢇng mô tꢇ các bưꢄc giꢇi.
ꢀ ꢥ 3 dꢋng: mã máy, mã giꢇ, mã nguꢜn.
ꢀ Ngôn ngꢉ lꢁp trình:
ꢀ Ngôn ngꢉ trung gian giꢉa ngưꢊi và máy.
ꢀ Trình biên dꢝch: dꢝch ra cho máy hiꢕu.
ꢀ Môi trưꢊng lꢁp trình:
ꢀ Editor + Compiler + Runner + Debugger.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
18
Bài tꢁp
ꢀ Bài tꢁp 1.1:
Cài đꢡt môi trưꢊng lꢁp trình Visual Studio trên máy tính cꢦa bꢋn.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
19
Bài tꢁp
ꢀ Bài tꢁp 1.2:
Viꢐt và chꢋy thꢤ chương trình sau trong Visual Studio.
Hãy đoán thꢤ xem chương trình làm gì?
#include <stdio.h>
void main()
{
printf(“Hello World\n”);
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn lập trình - Chương 1: Tổng quan về lập trình - Nguyễn Minh Huy", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_nhap_mon_lap_trinh_chuong_1_tong_quan_ve_lap_trinh.pdf

