1. Trang chủ
  2. » LUYỆN THI QUỐC GIA PEN -C

Bài giảng Tin học đại cương: Bài 5 - ThS. Nguyễn Thị Phương Thảo

20 10 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 20
Dung lượng 0,97 MB

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

Nội dung

Viết chương trình sử dụng hàm để xác định xem một số nguyên n được nhập vào từ bàn phím có phải số nguyên tố không. Bài 3: Viết hàm kiểm tra số hoàn chỉnh[r]

Trang 1

T IN ĐẠI CƯƠNG

Bài 5: CHƯƠNG TRÌNH CON

Nguyễn Thị Phương Thảo

Bộ môn KTMT và M, Khoa CNTT Trường Đại học Thủy Lợi

Trang 2

Nội dung chính

1 Giới thiệu về hàm (chương trình con)

2 Truyền tham số cho hàm

3 Phạm vi của biến (scope)

4 Bài tập

Trang 3

Giới thiệu về hàm

• Xây dựng các khối cho chương trình

• Cách gọi trong các ngôn ngữ khác

• I-P-O

Trang 4

Hàm định nghĩa trước

• Trong các thư viện có sẵn rất nhiều hàm

• Hai kiểu hàm:

• Phải khai báo #include thư viện phù hợp khi dùng hàm định nghĩa trước trong chương trình

Trang 5

Lời gọi hàm

• Xét lệnh gán: a= fabs(-4.2);

hàm

◦ Đối số trong lời gọi hàm (-4.2) có thể là một literal,

một biến, hoặc một biểu thức

• Lời gọi có thể là một phần của biểu thức:

sử dụng lời gọi hàm

Trang 6

Một số hàm định nghĩa trước

• #include <cstdlib>, thư viện gồm các hàm:

• Hàm pow(x, y): Trả về x mũ y

double result, x = 3.0, y = 2.0;

result = pow(x, y);

cout << result;

Trang 7

Một số hàm toán học

Trang 8

Một số hàm toán học

Trang 9

Hàm void định nghĩa trước

VD: exit(1); //Không trả về giá trị, do vậy không

được sử dụng để gán

Trang 10

HÀM DO NGƯỜI DÙNG ĐỊNH NGHĨA

• C++ cho phép người lập trình tự viết hàm của riêng mình

• Xây dựng các khối chương trình

• Định nghĩa hàm có thể nằm:

Trang 11

Các thành phần của hàm

• Khai báo hàm/nguyên mẫu hàm

• Định nghĩa hàm

• Lời gọi hàm

Trang 12

Vị trí đặt định nghĩa hàm

• Đặt sau hàm main(), không nằm bên trong hàm main()

• Các hàm là bình đẳng, không hàm nào là thành phần của hàm khác

• Các tham số hình thức trong định nghĩa

Giữ chỗ cho dữ liệu gửi vào

Sử dụng tên biến để tham chiếu tới dữ liệu trong định nghĩa

• Lệnh return

Trả dữ liệu về cho lời gọi

Trang 13

<Kiểu trả về > <Tên hàm> ([Danh sách các tham số]) ;

Trong đó:

- Kiểu trả về: là kiểu dữ liệu của giá trị mà hàm trả về

- Tên hàm: là tên thực sự của hàm,

- Danh sách các tham số: các tham số cần thiết để thực hiện hàm

(Một hàm có thể có tham số hoặc không)

Ví dụ: Khai báo hàm tính tổng hai số nguyên

int tinhtong (int so1,int so2);

HÀM TRẢ VỀ GIÁ TRỊ - KHAI BÁO HÀM

Trang 14

Cấu trúc:

<Kiểu trả về > <Tên hàm> ([Danh sách các tham số ])//tiêu đề

{

Thân hàm

}

Trong đó: Tiêu đề tương tự như khai báo, không có dấu “;” Thân hàm bao gồm tập hợp các lệnh xác định những gì mà hàm thực hiện.

HÀM TRẢ VỀ GIÁ TRỊ- ĐỊNH NGHĨA HÀM

Trang 15

Ví dụ: Định nghĩa hàm tính tổng đã được khai báo

ở trên

int tinhtong (int so1, int so2)

{

int tong;

tong = so1+so2;

return tong;

}

HÀM TRẢ VỀ GIÁ TRỊ - VÍ DỤ

Trang 16

Định nghĩa hàm có phần tiêu đề tương tự như phần khai

báo chỉ khác là không có dấu “;”

Định nghĩa hàm phải liệt kê tên các tham số sau tên hàm

Hàm trả về giá trị luôn luôn có lệnh return.

Giá trị trả về của hàm được xác định khi lệnh return được

thực thi

Mọi câu lệnh sau lệnh return đều không được thực thi.

Nếu định nghĩa hàm đầy đủ được đặt trước lời gọi đến nó thì khai báo hàm có thể bỏ đi

HÀM TRẢ VỀ GIÁ TRỊ - CÁC CHÚ Ý

Trang 17

Khi muốn sử dụng hàm, lập trình viên phải gọi hàm bằng cách

sử dụng lời gọi hàm

Lời gọi hàm được sử dụng như một biểu thức trong câu lệnh (không được gọi như một câu lệnh độc lập)

Hàm có thể được gọi bất cứ khi nào (sau khi có khai báo hoặc định nghĩa)

Khi gọi hàm các đối số được truyền tới các tham số theo thứ tự của nó và cần đảm bảo sự đồng nhất về kiểu dữ liệu

Cần lưu trữ các giá trị trả về của hàm

HÀM TRẢ VỀ GIÁ TRỊ - GỌI HÀM

Trang 18

HÀM TRẢ VỀ GIÁ TRỊ - VÍ DỤ

#include<iostream>

using namespace std;

int tinhtong(int so1, int so2);//khai bao ham

int main()

{

int a =6;

int b =7;

//a,b la cac gia triduoc truyen vao cac tham bien khi goi ham

cout<<"tong 2 so "<<a<< " va "<< b<< " la: "<<ketqua;

return 0;

}

int tinhtong(int so1, int so2)//dinh nghia ham

{

int tong;

tong = so1+so2;

return tong;

}

Trang 19

HÀM TRẢ VỀ GIÁ TRỊ - VÍ DỤ

#include<iostream>

using namespace std;

int tinhtong(int so1, int so2)//dinh nghia ham

{

int tong;

tong = so1+so2;

return tong;

}

nghia ham dat truoc loi goi no thi khong

Trang 20

Bài tập

Bài 1: Viết hàm tính tổng sau:

𝑆 = 1 + 1

2 +

1

3 + ⋯ +

1 𝑛 Viết chương trình sử dụng hàm để tính tổng S với n được nhập vào từ bàn phím

Bài 2: Viết hàm kiểm tra số nguyên tố

Viết chương trình sử dụng hàm để xác định xem một số nguyên n được nhập vào từ bàn phím có phải số nguyên tố không?

Bài 3: Viết hàm kiểm tra số hoàn chỉnh

Viết chương trình sử dụng hàm để xác định xem một số nguyên n được nhập vào từ bàn phím có phải số hoàn chỉnh không?

Ngày đăng: 09/03/2021, 05:00

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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