Bài giảng Tin đại cương - Bài 6: Chương trình con - Vũ Thương Huyền

BÀI 6  
CHƯƠNG TRÌNH CON  
Giảng viên:  
Vũ Thương Huyền – Khoa Công nghệ thông tin – ĐH Thủy Lợi  
Email:  
NỘI DUNG  
.Khái niệm hàm  
.Khai báo hàm  
.Sử dụng hàm  
.Phạm vi của biến  
BÀI TOÁN  
#include <iostream>  
#include<cmath>  
using namespace std;  
int main()  
{
double x=1;  
double fx;  
fx= pow(x,3) + 2*pow(x,2) -3;  
cout<<"fx = "<<fx<<endl;  
return 0;  
}
BÀI TOÁN  
#include <iostream>  
#include<cmath>  
#include <iostream>  
#include<cmath>  
using namespace std;  
using namespace std;  
double f(double x)  
{
int main()  
double fs=pow(x,3) + 2*pow(x,2) -3;  
{
return fs;  
}
double x=1, y=2, z=3;  
double fx, fy, fz;  
fx= pow(x,3) + 2*pow(x,2) -3;  
fy= pow(y,3) + 2*pow(y,2) -3;  
fz= pow(z,3) + 2*pow(z,2) -3;  
cout<<"fx = "<<fx<<endl;  
cout<<"fy = "<<fy<<endl;  
cout<<"fz = "<<fz<<endl;  
return 0;  
int main()  
{
double x=1, y=2, z=3;  
double fx, fy, fz;  
fx= f(x);  
fy= f(y);  
fz= f(z);  
cout<<"fx = "<<fx<<endl;  
cout<<"fy = "<<fy<<endl;  
cout<<"fz = "<<fz<<endl;  
return 0;  
}
}
KHÁI NIỆM HÀM  
. Khi bài toán quá lớn, khó phát triển -> chia thành các bài toán nhỏ  
. Các bài toán nhỏ gọi là hàm  
. Hàm main() là hàm khởi nguồn, thực hiện đầu tiên  
KHÁI NIỆM HÀM  
. Là tập các câu lệnh được tách ra từ chương trình chính  
. Có thể có giá trị đầu vào và trả kết quả đầu ra  
. Có thể được gọi nhiều lần trong chương trình  
CẤU TRÚC CHƯƠNG TRÌNH KHI VIẾT HÀM  
//Phần khai báo thư viện  
#include <iostream>  
using namespace std;  
//Phần định nghĩa hàm  
Viết định nghĩa  
hàm tại đây  
//Hàm chính  
int main () {  
Gọi hàm  
//Lời gọi hàm  
return 0;  
}
CẤU TRÚC CHƯƠNG TRÌNH KHI VIẾT HÀM  
//Phần khai báo thư viện  
#include <iostream>  
using namespace std;  
//Phần khai báo nguyên mẫu hàm  
Viết nguyên mẫu  
hàm tại đây  
//Hàm chính  
int main () {  
//Lời gọi hàm  
return 0;  
Gọi hàm  
}
Viết định nghĩa  
//Phần định nghĩa hàm  
hàm tại đây  
CẤU TRÚC CHƯƠNG TRÌNH KHI VIẾT HÀM  
. Ví dụ:  
#include <iostream>  
using namespace std;  
#include <iostream>  
using namespace std;  
double binhPhuong(double x);  
double binhPhuong(double x)  
{
int main () {  
double s = x*x;  
double x;  
return s;  
}
cout<<"Nhap gia tri x=";  
cin>>x;  
cout<<"x binh phuong ="<<binhPhuong(x);  
int main () {  
return 0;  
}
double x;  
cout<<"Nhap gia tri x=";  
cin>>x;  
double binhPhuong(double x)  
cout<<"x binh phuong ="<<binhPhuong(x);  
{
return 0;  
}
double s = x*x;  
return s;  
}
ĐỊNH NGHĨA HÀM  
(Xemmục2.6tronggiáotrình)  
. Cú pháp:  
kieutrave tenham (kieudulieu thamso1, kieudulieu thamso2,..)  
{
//các câu lệnh xử lý  
return giatri; //câu lệnh trả về giá trị  
}
Tên hàm và số tham số phải trùng với nguyên mẫu hàm  
Không có dấu ; khi định nghĩa hàm  
KHAI BÁO NGUYÊN MẪU HÀM  
(Xemmục2.6tronggiáotrình)  
. Chỉ là mô tả mẫu hàm  
Tên hàm  
Các tham số  
. Cú pháp:  
kieutrave tenham (kieudulieu thamso1, kieudulieu thamso2,..);  
kieutrave tenham (kieudulieu, kieudulieu ….);  
• kieutrave: kiểu dữ liệu trả về của hàm  
• tenham: đặt theo quy tắc định danh  
• kieudulieu: là kiểu dữ liệu của các tham số đầu vào  
• thamso1, thamso2: tên các tham số đầu vào, sử dụng trong hàm, đặt theo quy tắc định danh  
ĐỊNH NGHĨA HÀM  
. Ví dụ:  
#include <iostream>  
using namespace std;  
double binhPhuong(double);  
int main () {  
double x, s;  
cout<<"Nhap gia tri x="; cin>>x;  
s= binhPhuong(x);  
cout<<"x*x ="<<s;  
return 0;  
}
double binhPhuong(double x)  
{
double s = x*x;  
return s;  
}
LỜI GỌI HÀM  
. Là gọi hàm để sử dụng  
. Cú pháp:  
tenham (giatri1, giatri2…)  
. Các trường hợp gọi hàm:  
Gọi trong lệnh gán giá trị cho biến  
Gọi trong biểu thức toán học  
Gọi trong câu lệnh ghi ra màn hình  
. Ví dụ:  
double s = tong(a, 10, 2.5); //Goi ham tinh tong 3 so  
double tb = tong(a, b, c)/3; //Goi ham tinh tong 3 so  
cout<<tong(a,b,c);  
ĐỊNH NGHĨA HÀM  
. Ví dụ:  
#include <iostream>  
using namespace std;  
double binhPhuong(double);  
int main () {  
double x, s;  
cout<<"Nhap gia tri x="; cin>>x;  
s= binhPhuong(x);  
cout<<"x*x ="<<s;  
return 0;  
gọi hàm  
}
double binhPhuong(double x)  
{
double s = x*x;  
return s;  
}
LỆNH return  
. Trả về giá trị cho hàm  
. Có tác dụng kết thúc hàm  
. Có thể trả về giá trị của cả biểu thức  
. Có thể xuất hiện lênh return nhiều lần trong hàm  
. Ví dụ:  
double tuyetDoi(double u, double v)  
{
double s = u + v ;  
if(s>0)  
return s;  
else  
return -s;  
}
TÌM LỖI SAI TRONG CHƯƠNG TRÌNH SAU?  
1. #include <iostream>  
2. using namespace std;  
3. double bieuThuc(double, double)  
4.  
5. int main () {  
6. double x, y;  
7. cout<<"Nhap gia tri x, y:";  
8. cin>>x>>y;  
9. cout<<"Bieu thuc voi x= "x<<" va "<<20<<" la:" <<bieuThuc(x, 20)<<endl;  
10. cout<<"Bieu thuc voi x= "<<x<<" va "<<y<<" la:" <<bieuThuc(z, y)<<endl;  
11. cout<<"Bieu thuc voi x= "<<x<<" va "<<x<<" la:" <<bienThuc(x)<<endl;  
12. return 0;  
13. }  
14.  
15. double biThuc(double x, int y)  
16. {  
17.  
return x*x - 5*x + y;  
18. }  
TÌM LỖI SAI TRONG CHƯƠNG TRÌNH SAU?  
1. #include <iostream>  
2. using namespace std;  
3. int main ()  
4. {  
5. int t; double vtoc;  
6. cout<<"Nhap gia tri van toc va thoi gian:";  
7. cin>>x>>y;  
8.  
cout<<"Quang duong= "<<quangduong(t, vtoc)<<endl;  
9. return 0;  
10. }  
11.  
12. double quangduong(double v, int t);  
13. {  
14. double s = v*t;  
15. return s;  
16. }  
BÀI TẬP  
. Bài 1:Viết hàm tính diện tích hình tròn với tham số đầu vào là bán kính.  
Viết chương trình sử dụng hàm tính diện tích trên và hiển thị kết quả với  
bán kính r=2, r=6.  
. Bài 2: Viết hàm tính độ dài đoạn thẳng khi biết tọa độ 2 điểm. Lập trình  
đọc vào tọa độ 3 điểm A, B, C thuộc tam giác. Tính các đoạn thẳng AB,  
AC, BC và đưa kết quả ra màn hình.  
BÀI TOÁN  
#include <iostream>  
#include <string>  
using namespace std;  
int main()  
{
string hoten, lop;  
cout<<"Nhap vao ho ten:";getline(cin, hoten);  
cout<<"Nhap vao lop:";cin>>lop;  
cout<<"Loi chao tieng viet";  
cout<<"Xin chao "<<hoten<<" ,Lop "<<lop<<" !"<<endl<<endl;  
cout<<"Loi chao tieng anh";  
cout<<"Hello "<<hoten<<" ,Class "<<lop<<" !";  
return 0;  
}
BÀI TOÁN  
#include <iostream>  
#include <string>  
using namespace std;  
void hienthi(string hoten, string lop)  
{
cout<<"Loi chao tieng viet";  
cout<<"Xin chao "<<hoten<<" ,Lop "<<lop<<" !"<<endl<<endl;  
cout<<"Loi chao tieng anh";  
cout<<"Hello "<<hoten<<" ,Class "<<lop<<" !";  
}
int main()  
{
string hoten, lop;  
cout<<"Nhap vao ho ten:";getline(cin, hoten);  
cout<<"Nhap vao lop:";cin>>lop;  
hienthi(hoten, lop);  
return 0;  
}
Tải về để xem bản đầy đủ
pdf 36 trang baolam 21980 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tin đại cương - Bài 6: Chương trình con - Vũ Thương Huyền", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_tin_dai_cuong_bai_5_chuong_trinh_con_vu_thuong_huy.pdf