C++ dai hoc cong nghe[bookbooming.com]

Page 124

Chương 4. Hàm và chương trình

cout << "Nghiệm của loga(x) - 1 trên đoạn [2,3] = "; cout << timnghiem(loga,2,3)); getch(); } float timnghiem(float (*f)(float), float a, float b) { float c = (a+b)/2; while (fabs(a-b)>EPS && f(c)!=0) { if (f(a)*f(c)>0) a = c ; else b = c; c = (a+b)/2; } return c; } float emux(float x)

{ return (exp(x)-2); }

float logx(float x)

{ return (log(x)-1); }

d. Mảng con trỏ hàm

Tương tự như biến bình thường các con trỏ hàm giống nhau có thể được gộp lại vào trong một mảng, trong khai báo ta chỉ cần thêm [n] vào sau tên mảng với n là số lượng tối đa các con trỏ. Ví dụ sau minh hoạ cách sử dụng này. Trong ví dụ chúng ta xây dựng 4 hàm cộng, trừ, nhân, chia 2 số thực. Các hàm này giống nhau về kiểu, số lượng đối, … Chúng ta có thể sử dụng 4 con trỏ hàm riêng biệt để trỏ đến các hàm này hoặc cũng có thể dùng mảng 4 con trỏ để trỏ đến các hàm này. Chương trình sẽ in ra kết quả cộng, trừ, nhân, chia của 2 số nhập vào từ bàn phím. Ví dụ 17 : void cong(int a, int b) { cout << a << " + " << b << " = " << a+b ; } void tru(int a, int b)

{ cout << a << " - " << b << " = " << a-b ; }

void nhan(int a, int b) { cout << a << " x " << b << " = " << a*b ; } void chia(int a, int b) { cout << a << ": " << b << " = " << a/b ; } main() {

122


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.