Viết chương trình sinh n số nguyên ngẫu nhiên từ a đến b (a < b), với n, a và b được nhập từ bàn phím và lưu vào tập tin văn bản random.in. Sau đó, chương trình đọc tập tin này, tính tỷ lệ phần trăm của các số nguyên khác nhau, tỷ lệ cao nhất và thấp nhất rồi ghi vào tập tin random.out. Ví dụ:Viết chương trình sinh n số nguyên ngẫu nhiên từ a đến b (a < b), với n, a và b được nhập từ bàn phím và lưu vào tập tin văn bản random.in. Sau đó, chương trình đọc tập tin này, tính tỷ lệ phần trăm của các số nguyên khác nhau, tỷ lệ cao nhất và thấp nhất rồi ghi vào tập tin random.out. Ví dụ:Viết chương trình sinh n số nguyên ngẫu nhiên từ a đến b (a < b), với n, a và b được nhập từ bàn phím và lưu vào tập tin văn bản random.in. Sau đó, chương trình đọc tập tin này, tính tỷ lệ phần trăm của các số nguyên khác nhau, tỷ lệ cao nhất và thấp nhất rồi ghi vào tập tin random.out. Ví dụ:
Trang 1BÀI TẬP LỚN MÔN LẬP TRÌNH C
1 Đề 1 (2 sv): Sinh số ngẫu nhiên
Viết chương trình sinh n số nguyên ngẫu nhiên từ a đến b (a < b), với n, a và b được nhập từ bàn phím và lưu vào tập tin văn bản random.in Sau đó, chương trình đọc tập tin này, tính tỷ lệ phần trăm của các số nguyên khác nhau, tỷ lệ cao nhất và thấp nhất rồi ghi vào tập tin random.out Ví dụ:
2 Đề 2 (2 sv): Kiểm tra số đối xứng
Cho tập tin văn bản symnumber.in, mỗi dòng trong tập tin là một số nguyên dương, kết thúc tập tin là giá trị -1 Viết chương trình cho biết các số nguyên trên mỗi dòng có phải
là số đối xứng hoặc là số nguyên tố không, xuất kết quả ra tập tin symnumber.out Ví dụ:
3 Đề 3 (2 sv): Tìm mã sinh viên
Cho tập tin student.in, mỗi dòng trong tập tin chứa thông tin về một sinh viên, bao gồm: mã sinh viên (có 3 chữ số), họ tên và điểm trung bình cuối năm (số thực) Số dòng của tập tin không biết trước Viết chương trình đọc mã sinh viên từ bàn phím và xuất thông tin
về sinh viên có mã tương ứng ra tập tin student.out Ví dụ, người sử dụng nhập số 234
thì kết quả của tập tin student.out như sau:
random.in random.out
5
3
5
9
9
5
5: 50%
3: 16.67%
9: 33.33%
Ty le cao nhat: 50%
Ty le thap nhat: 16.67%
symnumber.in symnumber.out
12321
45
11
113
-1
12321 la so doi xung, khong la nguyen to
45 khong la so doi xung va nguyen to
11 la so doi xung va nguyen to
113 la so nguyen to, khong doi xung
Student.in Student.out
165 Nguyen Van A 7.5
234 Le Thi C 8.5
539 Tran Van K 6.6
Ho Ten: Le Thi C Diem TB: 8.5
4 Đề 4 (2 sv): Tính phương sai
Cho tập tin student.in, mỗi dòng trong tập tin chứa thông tin về một sinh viên, bao gồm: họ tên và điểm trung bình cuối năm (số thực) Số dòng của tập tin không biết trước Viết chương trình đọc tập tin này, cho biết có bao nhiêu sinh viên, giá trị trung bình và
Trang 2phương sai Biết rằng, nếu biểu thị trung bình của các giá trị x1, …, xn thì phương sai được tính:
_
x
n
i
i x x
2 _ ) ( 1
Xuất kết quả ra tập tin student.out Ví dụ:
5 Đề số 5 (2 sv): Đọc số tiếng Việt
Cho tập tin numbers.in, mỗi dòng trong tập tin là một số nguyên dương, kết thúc tập tin là giá trị -1 Viết chương trình đọc các số này và ghi ra tập tin numbers.out cách đọc bằng tiếng Việt Ví dụ:
numbers.in numbers.out
sau muoi bay ngan tam tram chin muoi
6 Đề số 6 (2 sv): Đèn led 7 đoạn
Cho tập tin led.in, mỗi dòng trong tập tin này là một số nguyên dương 16 bit, tập tin kết thúc bằng giá trị -1 Viết chương trình đọc các số nguyên này và ghi kết quả vào tập tin
led.out ở dạng led 7 đoạn Ví dụ:
student.in student.out Nguyen Van A 7.5
Le Thi C 8.5
Tran Van K 8.0
Co 3 sinh vien
Gia tri trung binh: 8 Phuong sai: 0.167
led.in
8
1234
-1
led.out
_
|_|
|_|
_ _
| _| _| |_|
| |_ _| |
Lưu ý: đèn led bảy đoạn có thể hiển thị mười chữ số thập phân:
7 Đề số 7 (2 sv): Phân tích số nguyên
Cho tập tin numbers.in, mỗi dòng trong tập tin này là một số nguyên dương n ( 30), tập tin kết thúc bằng giá trị -1 Viết chương trình đọc các số nguyên này và phân tích thành các toán hạng của một tổng các số nguyên dương, nếu các cách phân tích là hoán vị của nhau thì chỉ liệt kê một cách, kết quả được ghi vào tập tin numbers.out Ví dụ:
Trang 38 Đề số 8 (2 sv): Tìm tổng lớn nhất
Cho tập tin maxsum.in, dòng đầu tiên chứa số nguyên dương n là số lượng các mảng
số thực X, mỗi dòng trong n dòng tiếp theo chứa giá trị của các phần tử trong mảng X Người ta định nghĩa một vector con của X là tập hợp liên tiếp các thành phần của X Hãy xây dựng chương trình tìm vector con của X có tổng các thành phần là lớn nhất, giả sử nếu các thành phần của X đều âm thì tổng lớn nhất là 0 Kết quả được ghi ra từng dòng tương ứng vào tập tin maxsum.out Ví dụ:
number.in
2
4 -1
number.out
2 = 1 + 1
2 = 2
4 = 1 + 1 + 1 + 1
4 = 1 + 1 + + 2
4 = 1 + 3
4 = 2 + 2
4 = 4
maxsum.in
1
31 -49 59 26 -53 58 97 -93 -23 84
maxsum.out
187
Lưu ý 1: Thang điểm áp dụng chung:
‐ Thuật toán hoàn thiện: thuật toán được biểu diễn bằng mã giả
‐ Code hoàn chỉnh, biên dịch thành công
‐ Chạy đúng các dữ liệu thử
‐ Giảng viên chấm có quyền vấn đáp về bất cứ chi tiết nào trong thuật toán, bài làm của sinh viên Bất cứ sinh viên nào trả lời không rõ ràng, không nắm rõ thì cả 2 sinh viên cùng nhóm nhận điểm 0
‐ Các nhóm cùng đề bài nếu giống code với nhau, sẽ nhận điểm 0 (kể cả nhóm cho chép lẫn nhóm chép), sinh viên cần bảo mật bài làm của mình, không cho bất kỳ ai mượn
Lưu ý 2: Giảng viên sẽ dạy thêm cho sinh viên những phần không có trong đề cương, gồm:
‐ Các thao tác về tập tin
‐ Tìm kiếm tuần tự
‐ Sinh ngẫu nhiên