Nghiêm túc tí đi bạn. Trao đổi để học chứ có phải đùa ở đâu, con số 65 bạn nêu ra là ở đâu đó?
Bài toán gà chó, ban đầu có thể bạn chưa viết được cho hay để nó tối ưu, nhưng cách thô thiển nhất bạn sẽ phải có cách giải dễ hình dung như sau:
- Tối đa có 36 con, như vậy ta sẽ lặp từ 1 đến 36.
- Khả năng sẽ có ít nhất 1 con gà hoặc 1 con chó, không có trường hợp nào 0 con gà, 0 con chó, vì nếu bài toán mà có vậy thì người ta đã biết đáp án từ lâu, loại bỏ luôn phương án có chó/ gà bằng 0 ra khỏi để xử lý cho gọn nhẹ. Vậy, vòng lặp ta bớt đi 1 lần lặp, còn 35.
- Sẽ có hai vòng lặp lồng nhau, căn cứ trên số chân gà và số chân chó, nếu khớp 100, tổng ga + cho = 36 thì ta in kết quả ra, còn không thì “chạy xe không” qua đó (sau này tối ưu code thì đúng đáp án là break). Cụ thể đoạn code:
Đoạn code trên mình viết mà chưa được test, hồi giờ không biết gì về ngôn ngữ lập trình C/C++, hoàn toàn tra tài liệu và viết dựa trên hiểu biết về PHP. Hy vọng đoạn code trên ai đó cho chạy thử và chạy được, nếu hem chạy được báo giúp, xin đừng chém mình.
Mở rộng bài toán ra nhập tổng số gà và chó, chủ topic tự làm dựa trên bài toán trên, khai báo thêm biến tong_chan và biến tong_ga_cho cho phép người dùng nhập liệu bằng cint, để rồi “cài cắm” (thay thế) vào chỗ 35 và 100 trong đoạn code trên là xong.