ch ng 1 thu t t o n
Download
Skip this Video
Download Presentation
Chương 1: Thuật t oán

Loading in 2 Seconds...

play fullscreen
1 / 25

Chương 1: Thuật t oán - PowerPoint PPT Presentation


  • 166 Views
  • Uploaded on

Chương 1: Thuật t oán. Vấn đề , bài toán. Vấn đề : Những v ư ớng mắc, khó khăn trong cuộc sống mà ta cần giải quyết . Bài toán : Một loại vấn đề mà để giải quyết, cần đến tính toán (phép toán số, luận lí, quan hệ ). Vấn đề , bài toán. Giải quyết vấn đề bài toán :

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Chương 1: Thuật t oán' - didier


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
v n b i to n
503002 - Thuật toánVấnđề, bàitoán

Vấnđề:

  • Những vướng mắc, khó khăn trong cuộc sốngmà ta cần giải quyết.

Bàitoán:

  • Một loại vấn đề mà để giải quyết, cần đến tínhtoán (phép toán số, luận lí, quan hệ).
v n b i to n1
503002 - Thuật toánVấnđề, bàitoán

Giảiquyếtvấnđềbàitoán:

  • Bất kỳ vấn đề, bài toán ngoài đời nào cũng có thểđược chia thành trình tự nhiều công việc nhỏ hơn.
  • Trình tự các công việc nhỏ này được gọi là giải thuật giải quyết công việc ngoài đời.
  • Mỗi công việc nhỏ hơn cũng có thể được chia nhỏ hơn nữa nếu nó còn phức tạp,...
v n b i to n2
503002 - Thuật toánVấnđề, bàitoán

Giảiquyếtvấnđềbàitoán:

  • Vấn đề mấuchốt của việc dùng máy tính giải quyết công việc ngoài đời là lập trình.
thu t to n
503002 - Thuật toánThuậttoán

Thuậttoán:

  • Là cách biểu diễn lời giải "bài toán“ rõ ràng,chi tiết để có thể thực thi được trên máytính.
  • Là một dãy hữu hạn các bước nhằm xácđịnh các thao tác mà máy tính có thể thựchiện được sao cho sau khoảng thời gianhữu hạn thì cho ra kết quả.

Bài toán giải phương trình bậc 1- 1 ẩn. (??)

thu t to n1
503002 - Thuật toánThuậttoán

Các đặc trưng của thuật toán:

  • Tính hữu hạn: có hữu hạn bước và phải dừng.
  • Tính xác định: các bước rõ ràng, thực thi được.
  • Tính đúng: quá trình thực thi theo các bước đãchỉ ra phải đi đến kết quả nhưý.
  • Tính hiệu quả: khối lượng, không gian, thờigian tính toán không quá “lớn”.
thu t to n2
503002 - Thuật toánThuậttoán

Các đặc trưng của thuật toán:

  • Tính tổng quát: áp dụng được cho mọi trườnghợp của bài toán.
t hu t to n
503002 - Thuật toánThuậttoán

Phươngphápbiểudiễnthuậttoán:

-Thuật toán thường được biểu diễn bằng

các ngôn ngữ sau:

  • Dùng ngôn ngữ tự nhiên (NNTN)
  • Dùngmãgiả (NNTN + NN LT)
  • Dùng lưu đồ - sơ đồ khối
thu t to n3
503002 - Thuật toánThuậttoán

Biểudiễnbằng NNTN:

  • Dùng ngôn ngữ thường ngày để liệt kê các bước của thuật toán.
  • Khôngthểhiệnrõcấutrúccủathuậttoán.
  • Dài dòng, có thể gây hiểu lầm hoặc khó hiểu.
  • Không yêu cầu người viết hay đọc nắm quy tắc.
    • Không có một quy tắc cố định
thu t to n4
503002 - Thuật toánThuậttoán

Biểudiễnbằngmãgiả:

  • Vay mượn các cú pháp của một ngôn ngữ lập trình.
    • Dùngmộtphầnngônngữtựnhiên.
    • Bịphụthuộcvàongônngữlậptrình.
  • Mọi ngôn ngữ lập trình đều có những thao tác cơ bản.
    • Xửlý, rẽnhánhvàlặp.
    • Tận dụng được các khái niệm trong ngôn ngữ lập trình.
  • Dễdàngnắmbắtnội dung thuậttoán.
thu t to n5
503002 - Thuật toánThuậttoán

Mã giả của thuật toán giải pt bậc hai:

thu t to n6
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

thu t to n7
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

  • Công cụ trực quan diễn đạt thuật toán: Biểudiễnbằngmôhình – hìnhvẽ.
  • Theo dõi được:
    • sựphâncấpcáctrườnghợp.
    • quátrìnhxửlýcủathuậttoán.
  • Phânbiệthailoạithaotác: chọnlựavàxửlý
thu t to n8
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

  • Chọnlựatheo một điều kiện nào đó:
    • Biểu diễn bằng một hình thoi, bên trong chứa biểu thức điều kiện.
    • Vídụ: thao tác "nếu a = b thì thực hiện thao tác B2, ngược lại thực hiện B3" là thao tác chọn lựa.
thu t to n9
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

  • Thao tác chọn lựa: có thể có hai hướng đi
    • một hướng ứng với điều kiện thỏa
    • một hướng ứng với điều kiện không thỏa.
    • 2 cung có nhãn
      • Đ/Đúng,Y/Yes
      • S/Sai,N/No
thu t to n10
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

  • Xử lý:
    • Biểu diễn bằng một hình chữ nhật, bên trong chứa nội dung xử lý.
    • Ví dụ: "Chọn một môn học và in ra." là một thao tác thuộc loại hành động.
thu t to n11
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

  • Ðiểm cuối (terminator)
    • Biểu diễn bằng hình ô van
  • Điểm khởi đầu
    • chỉ có cung đi ra.
    • bên trong ô van ghi chữ: bắt đầu/start/begin
thu t to n12
503002 - Thuật toánThuậttoán

Biểu diễn bằng lưu đồ:

  • Điểm kết thúc
    • Chỉ có cung đi vào
    • Bên trong ô van ghi chữ: kết thúc/end
  • Mỗi lưu đồ chỉ có 1 điểm bắt đầu và 1 điểm kết thúc.
gi i b i to n tr n m y t nh
503002 - Thuật toánGiảibàitoántrênmáytính
  • Các bước giải quyết vấn đề, bài toán bằng máy tínhđiện tử (MTĐT):
    • Xác định vấn đề: xác định rõ yêu cầu bài toán, bài toán cho gì (Input) và yêu cầu tìm gì (Output).
    • Lựa chọn phương pháp giải: Có nhiều cách khác nhau để giải bài toán. Có thể khác nhau về thời gian thực hiện, chi phí lưu trữ dữ liệu, độ chính xác, … => tùy theo nhu cầu cụ thể mà chọn phương pháp giải thích hợp.
gi i b i to n tr n m y t nh1
503002 - Thuật toánGiảibàitoántrênmáytính
  • Xây dựng thuật toán: xây dựng mô hình chặt chẽ, chính xácvà chi tiết hơn cho phương pháp giải đã chọn. Xác định rõ ràng dữ liệu vào, ra cho cácbước thực hiện cơ bản và trật tự thực hiện các bước đó. Nên áp dụng phương pháp thiết kế có cấu trúc, từ thiết kế tổng thể tiến hành làm mịn dần từng bước.
gi i b i to n tr n m y t nh2
503002 - Thuật toánGiảibàitoántrênmáytính
  • Cài đặt chương trình: mô tả thuật giải bằng chương trình. Dựa vào thuật giải đã được xây dựng, căn cứ quy tắc của một ngôn ngữ lập trìnhđể soạn thảo ra chương trình thể hiện giải thuật thiết lập ở bước 3.
gi i b i to n tr n m y t nh3
503002 - Thuật toánGiảibàitoántrênmáytính
  • Hiệu chỉnh chương trình: Cho chương trìnhchạy thử để phát hiện và điều chỉnh sai sót nếu tìm thấy. Có hai loại lỗi:
      • lỗi cú pháp.
      • lỗi ngữ nghĩa.
gi i b i to n tr n m y t nh4
503002 - Thuật toánGiảibàitoántrênmáytính
  • Thực hiện chương trình: Cho MTĐT thực hiệnchương trình. Tiến hành phân tích kết quả thu được. Việc phân tích kết quả nhằm khẳng định kết quả đó có phù hợp hay không. Nếu không, cần kiểm tra lại toàn bộ các bước một lần nữa.
b i t p
503002 - Thuật toánBàitập

Một công ty, mỗi giờ làm việc của một công nhân được trả 25,000 đồng/giờ trong 8 giờ đầu làm việc theo qui định.

Nếu làm tăng ca (phải làm nhiều hơn 8 giờ qui định), thì mỗi giờ vượt qui định được trả thêm 30%. Tính tiền công cho một công nhân tùy theo giờ làm việc của họ.

ad