Bài thực hành Nhập môn lập trình số 6: Các cấu trúc lặp và sử dụng hàm đưa ra ví dụ minh họa và một số bài toán về cấu trúc vong lặp và cách sử dụng hàm để sinh viên thực hiện viết chương trình thực hiện tính toán theo đúng yêu cầu đề bài với ngôn ngữ C. Mời các bạn cùng tham khảo tài liệu.
Trang 1KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
Bài thực hành số 6 Các cấu trúc lặp (tt) và sử dụng hàm
Ví dụ minh họa:
Hãy chạy đoạn chương trình sau, nhận xét kết quả
int main ( )
{
int i ; //Used as a counter variable
for (i=1 ; i <=10 ; i++)
{
printf (" Hello , %d\n" , i) ;
}
return 0 ;
}
Hãy so sánh cấu trúc vòng lặp "for" và cấu trúc vòng lặp "while"
Tiêp tục quan sát hai ví dụ sau đây
int main ( )
{
int i ;
for (i = 0 ; i < 10; i++) {
if (i % 2 == 0) {
int j = i * i + 2* i + 1 ; printf (" f (%d) = %d", i, j) ; }
}
return 0 ;
}
int f (int x) {
return x*x + 2*x + 1 ;
}
int main ( )
{
int i ;
for (i = 0 ; i < 10; i++) {
if (i % 2 == 0) {
printf (" f (%d) = %d" , i , f(i)) ; }
}
return 0 ;
}
Hàm f nhận một tham số kiểu integer và trả về một giá trị kiểu int sẽ được khai báo như sau: int
f (int x) Trong đó x là tên của tham số hình thức truyền vào, khi gọi hàm thì x sẽ được gán giá trị tương ứng
Trang 2KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
Câu 1: Cho biết khi lấy ngẫu nhiên một điểm trong một hình vuông có cạnh là 1, xác suất để điểm đó nằm trong hình tròn nội tiếp hình vuông là π4 Tìm hiểu cách sử dụng hàm rand() trong thư viện stdlib.h Sử dụng hàm rand() để tính số π theo gợi ý trên
Câu 2: Dùng phương pháp chia đoạn để tính gần đúng tích phân sau
Z 2 0
4
1 + x2dx
Câu 3: Khai triển Mac Laurin của hàm ex như sau:
en(x) = 1 + x1/1! + x2/2! + + xn/n!
Độ chính xác của giá trị tính được lệ thuộc vào số lần tính n: n càng lớn kết quả tính càng chính xác Viết hàm có tên emux trả trị về kiểu double và có 2 tham số: x kiểu double và n kiểu int Trong hàm main dùng vòng lặp gọi hàm emux để kiểm tra tính chính xác khi n tăng dần
Câu 4: Cho n là số nguyên dương và s là tổng các ước số của nó (kể cả số 1) Biết rằng:
n là deficient nếu s < n
n là perfect nết s = n
n là abundant nếu s > n
Viết hàm có hai tham số nguyên dương m và n hiển thị phân loại (deficient, perfect, abundant ) của các số từ m đến n