1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng lập trình C hutech chuong1 tongquanvelaptrinh 2115

58 287 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 1,89 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

• Biết được các phương pháp để mô tả giải thuật• Đọc hiểu các giải thuật cơ bản • Có thể sử dụng công cụ hỗ trợ mô tả giải thuật bằng FlowChart... Tìm giải thuật• Tập hợp hữu hạn của các

Trang 1

Lập trình C

Chương 1 Tổng quan về lập trình

(3 tiết)

Trang 2

• Biết được các phương pháp để mô tả giải thuật

• Đọc hiểu các giải thuật cơ bản

• Có thể sử dụng công cụ hỗ trợ mô tả giải thuật bằng FlowChart

Trang 3

Chương trình máy tính?

• Mục đích?

• Cần những giai đoạn nào?

• Những gì cần có để hiện thực chương trình máy tính?

Trang 4

Chương trình máy tính?

CTDL Giải thuật

Ngôn ngữ Lập trình

ki m th ể ử

Trang 5

Các đặc điểm cần có của chương trình

• Đúng đắn, chính xác (correctness)

• Chắc chắn (robustness)

• Thân thiện (user friendliness)

• Khả năng thích nghi (adapability): Chương trình có khả

năng để phát triển tiến hóa theo yêu cầu

• Tính tái sử dụng (reuseability): Chương trình có thể

dùng để làm một phần trong một chương trình lớn khác

Trang 6

Các đặc điểm cần có của chương trình

• Tính hiệu quả (efficiency)

• Tính khả chuyển (porability): Khả năng chuyển đổi

giữa các môi trường

• Tính an toàn (security)

• Tính dừng (halt)

Trang 9

Xác định bài toán

Input -> Process -> Output

•Input: Giả thiết, thông tin được cung cấp?

•Process: Giải quyết vấn đề gì? Giải quyết như thế nào?

•Output: Đạt được những yêu cầu nào?

Trang 10

Xác định cấu trúc dữ liệu

• Phải biểu diễn đầy đủ được thông tin nhập và xuất của

bài toán

• Phù hợp với giải thuật (cách giải) được chọn

• Có thể cài đặt được trên ngôn ngữ lập trình cụ thể

Trang 11

Tìm giải thuậ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; khi các chỉ thị này được áp dụng triệt để thì sẽ dẫn đến kết quả sau cùng như

đã dự đoán

• Có thể là công thức, các bước cần phải thực hiện

Trang 12

Tính chất quan trọng của giải thuật

• 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: giải thuật 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 giải thuật 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

Trang 13

Tính chất quan trọng của giải thuật

• Tính phổ dụng: giải thuật 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: giải thuật phải gồm một số hữu hạn các bước tính toán

Trang 15

Các phương pháp chính mô tả giải thuật

• Mã tự nhiên

• Pseudocode (mã giả)

• Flowchart (lưu đồ)

Khi mô tả giải thuật phải bao gồm:

• Input - Đầu vào

• Output - Đầu ra / kết quả

• Process - Mô tả xử lý của giải thuật

Trang 16

•Đầu vào: 2 số nguyên dương a và b

Cách 1: Dùng mã tự nhiên

Bước 1: Nếu a = b thì kết luận a là USCLN và kết thúc

Bước 2: Nếu a > b thì a = a – b;

Ngược lại thì b = b – a;

Bước 3: Quay trở lại Bước 1

Ví  d :  Tìm ụ ước  s   chung  l n  nh t  (USCLN)  c a  2  s  ố ớ ấ ủ ố

nguyên d ng a và bươ

Trang 17

Ví  d :  Tìm ụ ước  s   chung  l n  nh t  (USCLN)  c a  2  s  ố ớ ấ ủ ố

nguyên d ng a và bươ

Là s  lai ghép gi a ngôn ng   ự ữ ữ

l p trình và ngôn ng  t   ậ ữ ự

nhiên

Trang 18

Cách 3: Dùng lưu đồ (flowchart)

Ví  d :  Tìm ụ ước  s   chung  l n  nh t  (USCLN)  c a  2  s  ố ớ ấ ủ ố

nguyên d ng a và bươ

Trang 19

Mô tả giải thuật bằng pseudocode

•Dễ hiểu, không chi tiết đến các kỹ thuật lập trình

IF <Điều kiện> THEN …ENDIF

IF <Điều kiện> THEN ELSE ENDIF

WHILE <Điều kiện> DO … ENDWHILE

DO … UNTIL <Điều kiện>

DISPLAY …

RETURN …

Trang 20

Mô tả giải thuật bằng lưu đồ (flowchart)

• Lưu đồ thuật toán là công cụ dùng để biểu diễn thuật

toán, việc mô tả nhập (input), dữ liệu xuất (output) và

luồng xử lý thông qua các ký hiệu hình học

• Phương pháp duyệt lưu đồ

• Duyệt từ trên xuống

• Duyệt từ trái sang phải

Trang 22

Bài tập mô tả giải thuật

1 Cho số nguyên n Tính trị tuyệt đối của n

3 Nhập vào độ dài của a, b và c Kiểm tra xem a, b, c có tạo

thành 3 cạnh của tam giác không?

S( )  1  2  3  4    (  1 ) 1

Trang 23

• Đầu vào: Số nguyênn n

• Đầu ra: |n|

Cho s  nguyên n. Tinh tr  tuy t đ i c a n ố ị ệ ố ủ

Trang 24

Gi i và bi n lu n ph ng trình b c I: ax+b=0ả ệ ậ ươ ậ

Trang 25

Ph n  đ c  thêm:  H ng  d n  dùng  công  c   v   ầ ọ ướ ẫ ụ ẽ

l u đ  gi i thu t  ư ồ ả ậ

Trang 26

26

Trang 29

•EDGE Diagrammer – Pacestar Software

Trang 30

•Đ c  phát  tri n  b i ượ ể ở Crocodile  Clips  LtdBao g m nhi u ph n m m h  tr  mô ph ng ph c v  cho ồ ề ầ ề ỗ ợ ỏ ụ ụgiáo d c:ụ

Trang 31

Giao diện chính

Trang 32

•H  tr  v  l u đ  gi i thu tỗ ợ ẽ ư ồ ả ậ

•Minh h a t ng b c th c hi n c a l u đọ ừ ướ ự ệ ủ ư ồ

•H  tr  nhi u lo i ki u d  li uỗ ợ ề ạ ể ữ ệ

•Cung c p s n nhi u hàm th  vi nấ ẵ ề ư ệ

•Cho phép mô t  thêm các hàm khácả

•H ng d n, mô t  chi ti t t ng thành ph nướ ẫ ả ế ừ ầ

•Nhi u ví d  minh h a ề ụ ọ

Đặc điểm

Trang 33

và biến toàn cục

Trang 34

Bắt đầu giải thuật Kết thúc giải thuật

Bắt đầu hàm con

Trả về giá trị của hàm con, hoặc kết thúc hàm con

Các ký hiệu lưu đồ

Trang 35

Ký hiệu Diễn giải

Gán giá trị vào biến

Tăng hoặc giảm giá trị của biến

Gọi thực hiện hàm con

Các ký hiệu lưu đồ

Trang 36

Nhận giá trị nhập, kết hợp với Edit box để lấy giá trị

Xuất giá trị, kết hợp với Text box

để hiển thị kết quả

Cửa sổ quan sát kết quả thực hiện từng bước của giải thuật Cửa sổ quan sát biến toàn cục

Các ký hiệu lưu đồ

Trang 43

Cung c p các hàm đ nh nghĩa s n, bao g m: ấ ị ẵ ồ

•Các hàm l ng giác: sin, cos, tan, …ượ

•Các  hàm  toán  h c  khác:  tính  căn,  logarit,  làm  tròn ọ

s , tính mũ, …ố

Các hàm thư viện

Trang 44

Hàm thư viện

Trang 45

Hàm thư viện

Trang 46

•Ch n ký hi u t ng  ngọ ệ ươ ứ

•Nh n chu t trái và kéo rê vào c a s  v  gi i thu tấ ộ ử ổ ẽ ả ậ

•Đ a ký hi u vào đúng đi m n i c n n i v i ký hi u có ư ệ ể ố ầ ố ớ ệ

trong c a sử ổ

•Di chuy n ký hi u đ n v  trí thích h pể ệ ế ị ợ

Minh họa thao tác vẽ

Điểm nối

Trang 47

•Chọn đường nối cần xóa

Minh họa thao tác vẽ - tách hai ký hiệu đang nối với nhau

Tách

Trang 48

Kéo rê ký hi u (c n n i) vào s  đ , sao cho hai đi m n i 1 ệ ầ ố ơ ồ ể ố

và 2 kh p nhau, nh  chu t ra và ch nh l i v  trí ký hi uớ ả ộ ỉ ạ ị ệ

Minh họa thao tác vẽ nối nhiều ký hiệu

vào một ký hiệu

2

1

Trang 49

•Nh n chu t vào tên bi n ho c giá ấ ộ ế ặ

tr  đ  thay đ iị ể ổ

•Nh n  chu t  ph i  vào  ký  hi u ấ ộ ả ệ

ch n Properties đ  thay đ i thu c ọ ể ổ ộ

Trang 50

Lấy giá trị và hiển thị kết quả trong giải thuật

•Dùng ký hiệu nhập (get) kết hợp với editbox để nhận giá

trị nhập bên ngoài

•Dùng ký hiệu xuất (set) kết hợp với editbox hoặc textbox

để hiển thị kết quả của giải thuật

Minh họa thao tác vẽ

Trang 51

•Xem kết quả cuối cùng – Quick Step

•Xem tự động kết quả thực hiện từng bước – Auto Step

(Có thể chính tốc độ)

Kiểm tra giải thuật

Chỉnh tốc độ Chế độ xem

toàn màn hình

Trang 52

•Chọn chế độ xem kết quả

•Chọn tốc độ thực hiện

•Kéo của sổ Monitor box vào cửa sổ

vẽ giải thuật để quan sát giá trị

từng bước

•Nhấn vào nút play ở ký hiệu bắt

đầu giải thuật để bắt đầu minh họa

Kiểm tra giải thuật

Nhấn vào để chạy bước tiếp theo (nếu chọn chế độ xem kết quả là

Manual step )

Trang 53

V  l u đ  gi i thu t không dùng hàm conẽ ư ồ ả ậ

V  l u đ  gi i thu t có dùng hàm conẽ ư ồ ả ậ

Các ví dụ

Trang 54

54Tìm s  l n nh t c a hai s  nguyên ố ớ ấ ủ ố

Trang 55

Tính ph n nguyên và ph n d  c a phép chia ầ ầ ư ủ

Trang 56

56Hàm tìm x trong m ng 1 chi u a  ả ề

Trang 57

Tìm  ki m  ph n  t   có  giá  tr   x  xu t  hi n  ế ầ ử ị ấ ệ

trong m ng m t chi u ả ộ ề

Trang 58

Q&A

Ngày đăng: 27/02/2020, 01:28

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w