PDA

View Full Version : cần giải giúp bài tập pascal ?



ruacon87
03-01-2008, 22:16
Em có 1 bài toán như thế này nhờ các bác giải giúp

Đặc tả:

Một công ty có 1 chương trình tính tiền điện thoại cho các khách hàng của mình. Hiện công ty đang có 2 tệp tin, 1 tệp về khách hàng, một tệp về các cuộc điện thoại đã gọi.

1)))))Tệp KHACHHANG.DAT là tệp về khách hàng. Tệp này gồm có:

+ Tên của khách hàng là 1 một xâu ký tự, độ dài không quá 25 và kết thúc bởi dấu ";".

+ Số Đt của khách hàng: nằm trong khoảng 8000000 và 89999999.

Chẳng hạn dòng đầu tiên của tệp là:

Nguyễn Văn Thành; 48856756.

2)))))))))Tệp lưu trữ các cuộc điện thoại mang tên PHONE.DAT. Mỗi dòng có những thông tin về những cuộc gọi điện đến như sau:

+ Số ĐT: Nằm trong khoảng như trên.

+ Số phút đã gọi. Trong khoảng từ 1=>120 phút.

+Thời điểm gọi. Trong khoảng từ 0h00 ==>24h/ngày.

+Ngày gọi.

+ Miền: Nội hạt, lân cận, vùng khác.(NH, LC, VK)

Chẳng hạn, dòng đầu tiên của tệp PHONE.DAT có thể như sau:

4985765 4 5.42 15/5/2006. NH

Đương nhiên là có thể có nhiều dòng có cùng số ĐT.

Hai têp trên liên hệ với nhau qua số ĐT. Sau khi đọc 1 cuộc ĐT trong tệp PHONE.DAT, cuộc gọi sẽ được xử lý cho khách hàng có số ĐT trùng với số ĐT của cuộc ĐT đó.. Tệp các cuộc ban đầu chưa được sắp xếp nhưng tệp kết quả phải được sắp xếp theo thứ tự tăng dần của số ĐT. Có thể giả sử rằng tất cả các dữ liệu trên tệp đều hợp lệ và đương nhiên có thể có những khách hàng không có cuộc gọi nào.

Tệp KETQUA.DAT cần có tiêu đề thích hợp và nêu rõ những thông tin sau đây:

------Với mỗi khách hàng:

+ Tổng số tiền mà học phải trả cho công ty.

+Tổng số cuộc gọi của từng miền.

--------Thông tin tổng thể:

+Toàn bộ số tiền họ thu được từ khách hàng.

+toàn bộ các cuộc gọi của khách hàng trong từng miền.

***Xử lý:

Việc tính tiền cho mỗi cuộc gọi như sau:

Tiền=Giá cơ bản*Số phút*Hệ số miền.

Giá cơ bản là 500 đ

Hệ số miền đối với nôi hạt 1, lân cận là 2, vùng khác là 3.

đối với thứ bảy, chủ nhật và các cuộc gọi trong khoảng từ 23h->5 h sáng ngày hôm sau.

được giảm giá 30%
thanks các bác nhìu !

mr_invincible
03-01-2008, 22:31
Ý của bạn là hỏi tất cả những câu đó hay chỉ hỏi câu nào? Bài này cũng khá đơn giản, chỉ đọc hết dữ liệu vào rồi xử lý là được thôi mà?

ruacon87
09-01-2008, 11:33
Mình muốn hỏi tính ngày thứ 7 và chủ nhật như thế nào?

mr_invincible
09-01-2008, 20:08
Không hiểu bạn định hỏi gì? Ở đề bài hình như đâu có yêu cầu gì vào tính thứ trong tuần mà chỉ hỏi ngày thôi nhỉ (tôi xin lỗi trước nếu tôi đọc thiếu). Còn nếu có hỏi về ngày thì có thể đánh số Chủ nhất là ngày 1, thứ 2..thứ 7 là 2..7

ruacon87
12-01-2008, 07:46
Ý mình là muốn tạo một hàm để xét xem một ngày bất kì trong năm là thứ 7 hay cn để tiến hành giảm cước điện thoại cho những thuê bao gọi trong thời gian là thứ 7 cn.

mr_invincible
12-01-2008, 11:04
À nếu muốn làm như vậy thì có 2 cách:
- Cách 1: Dùng công thức tính thứ theo ngày tháng năm
- Cách 2: Chọn 1 ngày làm mốc, tính số lượng ngày tính từ mốc đến ngày cần tính xem có bao nhiêu ngày rồi dùng số dư khi chia cho 7 để xác định đó là thứ mấy (tính theo ngày mốc)