02/10/2018, 14:03

cộng trừ nhân chia phân số trong pascal

Đề bài: viết chương trình nhập vào 2 phân số a/b , c/d với a/b lớn hơn c/d và không âm. Hãy tính các phép toán cộng, trừ, nhân, chia và xuất ra màn hình. Lưu ý: kết quả phải tối giản. Lời giải cộng trừ nhân chia phân số trong pascal – Cơ sở đề mình viết các phép tính là do ...

Đề bài: viết chương trình nhập vào 2 phân số a/b , c/d với a/b lớn hơn c/d và không âm. Hãy tính các phép toán cộng, trừ, nhân, chia và xuất ra màn hình.

Lưu ý: kết quả phải tối giản.

Lời giải cộng trừ nhân chia phân số trong pascal

– Cơ sở đề mình viết các phép tính là do tính chất của toán học, xem hình để dễ hiểu hơn…

– ở code dưới đây mình sẽ ko chặn các trường hợp input cho ra kết quả vô nghĩa nên các bạn tự cải tiến nếu cần.

– ở phép tính chia, thật ra chỉ cần gọi procedure nhân rồi nghịch đảo lại là được, nhưng do xuất kết quả ở trong procedure luôn nên nó sẽ hiện dấu nhân, vì vậy mình sẽ viết lại cái khác.

– Để phân số có tính tối giản thì chỉ cần chia tử và mẫu cho ước chung lớn nhất của tử và mẫu.

– Nếu kết quả tu/mau có dạng tu/1 thì chỉ cần xuất tử. vì phân số có mẫu là 1 vô nghĩa.

….. còn ở phép nhân và chia, chỉ cần tử bằng 0 thì kết quả sẽ bằng 0.

Code cộng, trừ, nhân chia trong pascal

0