Tìm hiểu hàm và thư viện lập trình phần 8 potx

5 303 0
Tìm hiểu hàm và thư viện lập trình phần 8 potx

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

Thông tin tài liệu

36 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện  Chọnthamsố₫ầu vào (=> tham biến) — Đặctả ý nghĩa: Thể hiệnrõvaitròthamsố — Đặt tên: Ngắngọn, tự mô tả —Chọnkiểu: Kiểunhỏ nhấtmà₫ủ biểudiễn —Chọncáchtruyềnthamsố: cân nhắcgiữatruyềngiátrị hay truyền ₫ịachỉ/tham chiếuvàokiểuhằng  Chọnthamsố₫ầura(=> thambiếntruyềnqua ₫ịachỉ/qua tham chiếuhoặcsử dụng giá trị trả về) — Đặctả ý nghĩa, ₫ặttên, chọnkiểutương tự như tham số₫ầuvào  Định nghĩabổ sung các kiểudữ liệumớinhư cầnthiết  Mô tả rõ tiềntrạng ( pre-condition ): ₫iềukiệnbiênchocáctham số₫ầuvàovàcác₫iềukiệnngoạicảnh cho việcgọihàm  Mô tả rõ hậutrạng ( post-condition ): tác ₫ộng củaviệcsử dụng hàm tớingoạicảnh, các thao tác bắtbuộc sau này,  Thiếtkế thân hàm dựavàocácchứcnăng ₫ã phân tích, sử dụng lưu ₫ồ thuậttoánvớicáccấutrúc₫iềukiện/rẽ nhánh (kể cả vòng lặp) => có thể phân chia thành các hàm con nếucần 37 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện Ví dụ minh họa: Tìm số nguyên tố Bài toán: Xây dựng hàm tìm N số nguyên tố₫ầutiên!  Phân tích: —Dữ kiện: N - số số nguyên tố₫ầutiêncầntìm —Kếtquả: Một dãy N số nguyên tố₫ầutiên —Cácchứcnăng cầnthựchiện: z Nhậpdữ liệu? KHÔNG! z Kiểmtradữ kiện vào (N)? Có/không (NếukiểmtramàN nhỏ hơn0 thìhàmlàmgì?) z Cho biếtk số nguyên tố₫ầutiên, xác₫ịnh số nguyên tố tiếp theo z Lưutrữ kếtquả mỗilầntìmravàomộtcấutrúcdữ liệuphù hợp(dãysố cầntìm) z In kếtquả ra màn hình? KHÔNG! 38 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện  Đặt tên hàm: findPrimeSequence  Tham số vào: 1 —Ý nghĩa: số các số nguyên tố cầntìm —Tên: N —Kiểu: số nguyên ₫ủ lớn(int/long) —Truyềnthamsố: qua giá trị  Tham số ra: 1 —Ý nghĩa: dãy N số nguyên tố₫ầu tiên tính từ 1 —Giátrị trả về hay tham biến? Tham biến! —Tên: primes —Kiểu: mảng số nguyên (của int/long) —Truyềnthamsố: qua ₫ịachỉ (int* hoặc long*)  Tiềntrạng: —Thamsố N phảilàsố không âm (có nên chọnkiểu unsigned?) – primes phảimang₫ịachỉ củamảng số nguyên có ít nhấtN phầntử  Hậutrạng: không có gì ₫ặcbiệt 39 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện  Khai báo hàm: void findPrimeSequence(int N, int* primes); Start N>0 primes[0]=1 k=1 k<N primes[k]=findNextPrime ++k Stop false true true false  Thiếtkế thân hàm —Lưu ₫ồ thuậttoánnhư hình vẽ —Phânchia, bổ sung một hàm mới: findNextPrime  Lặplạiqui trìnhthiếtkế hàm cho findNextPrime (Bài tậpvề nhà!) 40 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện 3.5 Thư việnchuẩn ANSI-C  Thư việnvào/ra(nhập/xuất) <stdio.h>  Xử lý ký tự và chuỗikýtự <string.h>, <ctype.h>  Thư viện hàm toán <math.h>, <float.h>  Thời gian, ngày tháng <time.h>, <locale.h>  Cấpphátbộ nhớ₫ộng <stdlib.h>  Các hàm ký tự rộng <wchar.h>,<wctype.h>  Các hàm khác <stdlib.h>, . kếtquả mỗilầntìmravàomộtcấutrúcdữ liệuphù hợp(dãysố cầntìm) z In kếtquả ra màn hình? KHÔNG! 38 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện  Đặt tên hàm: findPrimeSequence  Tham số vào: 1 —Ý. SƠN Chương 3: Hàm và thư viện 3.5 Thư việnchuẩn ANSI-C  Thư việnvào/ra(nhập/xuất) <stdio.h>  Xử lý ký tự và chuỗikýtự <string.h>, <ctype.h>  Thư viện hàm toán <math.h>, <float.h> . hàm —Lưu ₫ồ thuậttoánnhư hình vẽ —Phânchia, bổ sung một hàm mới: findNextPrime  Lặplạiqui trìnhthiếtkế hàm cho findNextPrime (Bài tậpvề nhà!) 40 © 2004, HOÀNG MINH SƠN Chương 3: Hàm và thư viện 3.5

Ngày đăng: 31/07/2014, 04:20

Từ khóa liên quan

Mục lục

  • Kỹ thuật lập trìnhPhần II: Lập trình có cấu trúc

  • Nội dung chương 3

  • 3.1 Hàm và lập trình hướng hàm

  • Hàm là gì?

  • Ví dụ phân tích

  • Phương án 4 trong 1

  • Phương án phân hoạch hàm (1)

  • Phương án phân hoạch hàm (1)

  • Phương án phân hoạch hàm (1)

  • Phương án phân hoạch hàm (2)

  • Phương án phân hoạch hàm (2)

  • 3.2 Khai báo và định nghĩa hàm

  • Khai báo hàm và lời gọi hàm

  • Khai báo hàm C/C++ ở đâu?

  • Định nghĩa hàm ở đâu?

  • 3.3 Truyền tham số và trả về kết quả

  • Tham biến hình thức và tham số thực tế

  • 3.3.1 Truyền giá trị

  • Thử ví dụ đọc từ bàn phím

  • Truyền giá trị

Tài liệu cùng người dùng

Tài liệu liên quan