1. Trang chủ
  2. » Cao đẳng - Đại học

chương 4 hàm con

41 566 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Chương 4 Hàm Con
Trường học Trường Đại học Công nghệ Thông tin - Đại học Quốc gia TP.HCM
Chuyên ngành Lập trình C và C++
Thể loại Giáo trình môn học
Năm xuất bản 2014
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 41
Dung lượng 2,77 MB

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

Nội dung

đã được khai báoGọi thực hiện các hàm theo... *Được khai báo bên ngoài trong toàn chương trình, nh ng không nên khai báo ư couta; coutb; } void main { int c; Nhap; c=a+b;... void HoanVii

Trang 1

05

Trang 2

đã được khai báo

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

Trang 3

int Tong(int a, int b)

G i hàm ọ

Trang 4

*Ha m la môt đoan ch̀ ̀ ̣ ̣ ương tri nh đôc lâp ̀ ̣ ̣ th c ự hiên tron ven môt công viêc nhâ t đinh ̣ ̣ ̣ ̣ ̣ ́ ̣ sau đo ́tra vê gia tri cho ch̉ ̀ ́ ̣ ương tri nh goi no , hay no i ̀ ̣ ́ ́

ca ch kha c ha m la s chia nho cua ch́ ́ ̀ ̀ ự ̉ ̉ ương tri nh.̀

Trang 5

*void: Không tr v giá trả ề ị

*float / int / long / char */ ki u c u trúc / … ể ấ :

Tr v giá tr k t qu có ki u d li u tả ề ị ế ả ể ữ ệ ương

ki u d li u)ể ữ ệ

Trang 6

* TênHàm: Đ t tên theo qui ặ ướ c sao cho ph n ánh đúng ch c năng th c ả ứ ự

hi n c a hàm ệ ủ

* Danh sách các tham s (n u có): đ u ố ế ầ vào c a hàm ( ủ trong m t s tr ộ ố ườ ng

h p có th là đ u vào và đ u ra c a ợ ể ầ ầ ủ hàm n u k t qu đ u ra có nhi u giá ế ế ả ầ ề

tr - Tham s này g i là tham chi u ị ố ọ ế )

Trang 7

Cài đ t ặ

void TênHàm([danh sa ch ca c tham sô ])́ ́ ́

{

Khai ba o ca c biê n cuc bố ́ ́ ̣ ̣

Ca c câu lênh / khô i lênh hay l i goi đê n hàm ́ ̣ ́ ̣ ờ ̣ ́

kha c.́

}

G i hàm ọ

TênHàm(danh sách tên các đ i s ); ố ố

Nh ng ph ư ̃ ươ ng th c loai na y th ứ ̣ ̀ ươ ̀ ng r i va o nh ng ơ ̀ ư ̃

nho m ch c năng: Nhâp / xuâ t d liêu , thô ng ́ ứ ̣ ́ ữ ̣ ́

Trang 8

Viê t ch́ ương tri nh nhâp sô nguyên d̀ ̣ ́ ương n va in ̀

ra ma n hi nh ca c ̀ ̀ ́ ước sô cua ń ̉

Phân ti ch ba i toa n: ́ ̀ ́

*Input: n (Đê xa c đinh tham sô )̉ ́ ̣ ́

Kiêu d liêu: sô nguyên d̉ ữ ̣ ́ ương (int).

*Output: In ra ca c ́ ước sô cua n (Đê xa c đinh ́ ̉ ̉ ́ ̣

kiêu d liêu tr v c a hàm)̉ ữ ̣ ả ề ủ

Xu t ra màn hình ấ  Không tra vê gia tri ̉ ̀ ́ ̣  Kiêu d liêu c a hàm la ̉ ữ ̣ ủ ̀ void

*Xa c đinh tên hàm:́ ̣ Hàm na y du ng in ra ca c ̀ ̀ ́ ước

sô cua n nên co thê đăt la ́ ̉ ́ ̉ ̣ ̀ LietKeUocS

Trang 10

K t qu ch ế ả ươ ng trình

Trang 11

Cài đ t ặ

<Kiêu d liêu tr v > TênHàm([danh sa ch ca c tham sô ]) ̉ ữ ̣ ả ề ́ ́ ́

{

<Kiêu d liêu tr v > kq; ̉ ữ ̣ ả ề

Khai ba o ca c biê n cuc bố ́ ́ ̣ ̣

Ca c câu lênh / khô i lênh hay l i goi đê n hàm kha c.́ ̣ ́ ̣ ờ ̣ ́ ́

Trang 12

Viê t ch ́ ươ ng tri nh nhâp sô nguyên d ̀ ̣ ́ ươ ng n va ti nh tông ̀ ́ ̉

* Phân ti ch ba i toa n: ́ ̀ ́

Input: n (Đê xa c đinh tham sô )̉ ́ ̣ ́

 Kiêu d liêu: sô nguyên d ̉ ư ̃ ̣ ́ ươ ng (int).

Output: Tông S (Đê xa c đinh kiêu d liêu ph̉ ̉ ́ ̣ ̉ ư ̃ ̣ ươ ng th c) ứ

 Tra vê gia tri cua S ̉ ̀ ́ ̣ ̉

 S la tông ca c sô nguyên d ̀ ̉ ́ ́ ươ ng nên S cu ng la sô nguyên ̃ ̀ ́

d ươ ng  Kiêu tra vê cua ha m la ̉ ̉ ̀ ̉ ̀ ̀ int (hoăc ̣ long)

* Xa c đinh TênHàḿ ̣ : Du ng ti nh tông S nên co thê đăt la ̀ ́ ̉ ́ ̉ ̣ ̀

TongS

int TongS(int n);

0

; 3

2

1 + + + + >

Trang 14

*Ph m vi kh i ạ ố

Trang 17

*Ho t đ ng t đ u đ n cu i m t hàmạ ộ ừ ầ ế ố ộ , ch có tác ỉ

d ng trong hàmụ

void main() {

int k;

float m;

double x;

//Các lệnh khác //…

}

Trang 18

*Được khai báo bên ngoài

trong toàn chương trình,

nh ng không nên khai báo ư

cout<<"Nhap a: "; cin>>a;

cout<<"Nhap b: "; cin>>b;

} void main() {

int c;

Nhap();

c=a+b;

Trang 19

*Bi n đ ế ượ c khai báo toàn c c và có kèm t khóa static ụ ừ

Trang 20

* Tham s làm k t qu đ u ra ố ế ả ầ

Trang 21

Xét ch ươ ng trình hoán v 2 s nguyên a, b ị ố cho tr ướ c

Vi t ch ế ươ ng trình v i 2 tr ớ ườ ng h p ợ

* Tr ườ ng h p không dùng tham chi u ợ ế

* Tr ườ ng h p dùng tham chi u ợ ế

Trang 22

void HoanVi(int a, int b)

Trang 23

K t qu ế ả

Trang 24

void HoanVi(int &a, int &b)

Trang 25

K t quế ả

Trang 26

Tr ướ c khi xây d ng hàm ph i tr l i nh ng câu h i sau: ự ả ả ờ ữ ỏ

- N u có mà sau khi th c hi n xong hàm v n không ế ự ệ ẫ

thay đ i ổ  Tham tr (không là tham chi u) ị ế

Trang 27

* Môt ha m đ ̣ ̀ ượ c goi co ti nh đê qui nê u trong ̣ ́ ́ ̣ ́ thân cua ha m đo co lênh goi lai chi nh no ̉ ̀ ́ ́ ̣ ̣ ̣ ́ ́ môt ca ch t ̣ ́ ươ ̀ ng minh hay tiê m ân ̀ ̉

* Phân loai đê qui ̣ ̣

* Đ qui tuyê n ti nh ệ ́ ́

* Đê qui nhi phân ̣ ̣

* Đê qui phi tuyê n ̣ ́

* Đê qui hô t ̣ ̃ ươ ng.

Trang 28

• Trong thân ha m co duy nhâ t môt l i goi ha m goi lai ̀ ́ ́ ̣ ơ ̀ ̣ ̀ ̣ ̣

Trang 29

Vi dú ̣: Ti nh ́

- Điê u kiên d ng: S(0) = 0.̀ ̣ ừ

- Qui tă c (công th c) ti nh: S(n) = S(n-1) + n.́ ứ ́

long TongS (int n)

S ( ) = 1 + 2 + 3 +  +

Trang 30

Trong thân cua ha m co hai l i goi ha m goi lai chi nh no môt ̉ ̀ ́ ơ ̀ ̣ ̀ ̣ ̣ ́ ́ ̣

ca ch t ́ ươ ̀ ng minh.

<Kiêu d liêu ha m> ̉ ư ̃ ̣ ̀ TenHam (<danh sa ch tham sô >)́ ́

{

if (điê u kiên d ng) ̀ ̣ ư ̀ {

//Tra vê gia tri hay kê t thu c công viêc ̉ ̀ ́ ̣ ́ ́ ̣

}

//Th c hiên môt sô công viêc (nê u co ) ự ̣ ̣ ́ ̣ ́ ́

.TenHam (<danh sa ch tham sô >); //Giai quyê t vâ n đê nho ́ ́ ̉ ́ ́ ̀ ̉

h n ơ

//Th c hiên môt sô công viêc (nê u co ) ự ̣ ̣ ́ ̣ ́ ́

TenHam (<danh sa ch tham sô >); //Giai quyê t vâ n đê co n ́ ́ ̉ ́ ́ ̀ ̀

Trang 31

Vi du: ́ ̣ Ti nh sô hang th n cua da y Fibonaci đ ́ ́ ̣ ư ́ ̉ ̃ ượ c đinh nghi a ̣ ̃

Trang 32

Trong thân cua ha m co l i goi ha m goi lai chi nh no đ ̉ ̀ ́ ơ ̀ ̣ ̀ ̣ ̣ ́ ́ ượ c đăt bên ̣ trong vo ng lăp ̀ ̣

<Kiêu d liêu ha m> ̉ ư ̃ ̣ ̀ TenHam (<danh sa ch tham sô >)́ ́

{

for (int i = 1; i<=n; i++)

{ //Th c hiên môt sô công viêc (nê u co ) ự ̣ ̣ ́ ̣ ́ ́

if (điê u kiên d ng) ̀ ̣ ư ̀ {

//Tra vê gia tri hay kê t thu c công viêc ̉ ̀ ́ ̣ ́ ́ ̣ }

else { //Th c hiên môt sô công viêc (nê u co ) ự ̣ ̣ ́ ̣ ́ ́

TenHam (<danh sa ch tham sô >); ́ ́

Trang 33

Vi du: ́ ̣ Ti nh sô hang th n cua da y {X ́ ́ ̣ ư ́ ̉ ̃ n} đ ượ c đinh nghi a nh ̣ ̃ ư sau:

Trang 34

Trong thân cua ha m na y co l i goi ha m đê n ha m kia ̉ ̀ ̀ ́ ơ ̀ ̣ ̀ ́ ̀

Trang 35

<Kiêu d liêu ha m> ̉ ư ̃ ̣ ̀ TenHam2 (<danh sa ch tham sô >);́ ́

{

}

{

}

Trang 36

Vi du: ́ ̣ Ti nh sô hang th n cua hai da y {X ́ ́ ̣ ư ́ ̉ ̃ n}, {Yn} đ ượ c đinh nghi a nh ̣ ̃ ư sau:

Trang 37

*Ví d tính n! v i n=5 ụ ớ

Trang 38

Xác đ nh các khai báo hàm c a các bài toán sau:ị ủ

1.Viê t ch́ ương tri nh ti nh diên ti ch va chu vi cua ̀ ́ ̣ ́ ̀ ̉

hi nh ch nhât v i chiê u da i va chiê u rông ̀ ữ ̣ ớ ̀ ̀ ̀ ̀ ̣

được nhâp t ba n phi m.̣ ừ ̀ ́

2.Viê t ch́ ương tri nh ti nh diên ti ch va chu vi hi nh ̀ ́ ̣ ́ ̀ ̀tro n v i ba n ki nh đ̀ ớ ́ ́ ược nhâp t ba n phi m.̣ ừ ̀ ́

3.Nhâp va o 3 sô th c a, b, c va kiêm tra xem ̣ ̀ ́ ự ̀ ̉chu ng co tha nh lâp tha nh 3 canh cua môt tam ́ ́ ̀ ̣ ̀ ̣ ̉ ̣gia c hay không? Nê u co ha y ti nh diên ti ch, ́ ́ ́ ̃ ́ ̣ ́chiê u da i mô i đ̀ ̀ ̃ ường cao cua tam gia c va in ̉ ́ ̀

kê t qua ra ma n hi nh.́ ̉ ̀ ̀

Trang 39

* Công th c ti nh diên ti ch ư ́ ́ ̣ ́

s = sqrt(p*(p-a)*(p-b)*(p-c) )

v i p là n a chu vi c a tam giác ớ ử ủ

* Công th c ti nh ca c đ ư ́ ́ ́ ươ ̀ ng cao:

ha = 2s/a, hb=2s/b, hc=2s/c.

Trang 40

1 Vi t chế ương trình t t c các bài t p 1 ấ ả ậ

2 Viê t ch́ ương tri nh nhâp sô nguyên d̀ ̣ ́ ương n,

ti nh tông ca c ́ ̉ ́ ước s dố ương c a n ủ

4 Viê t ch́ ương tri nh nhâp sô nguyên d̀ ̣ ́ ương n

gô m k ch sô , đê m xem n co bao nhiêu ch ̀ ữ ́ ́ ́ ữ

Trang 41

5 Viê t ch ́ ươ ng tri nh ti nh tiê n thuê ma y dich vu Internet ̀ ́ ̀ ́ ̣ ̣

va in ra ma n hi nh kê t qua V i d liêu nhâp va o la ̀ ̀ ̀ ́ ̉ ơ ́ ư ̃ ̣ ̣ ̀ ̀

 Gi va o ca s m nhâ t la 6 gi sa ng va gi ra ca ơ ̀ ̀ ơ ́ ́ ̀ ơ ̀ ́ ̀ ơ ̀

Ngày đăng: 23/05/2014, 10:02

TỪ KHÓA LIÊN QUAN

w