Assignment Type
Subject
Uploaded by Malaysia Assignment Help
Date
Description
In this assignment, you will be asked to implement a Python program to solve the following puzzles described below;
The main objective of this assignment is not to find a solution. Rather, it is for you to demonstrate an understanding in the process of obtaining a solution to such problems; and that you are capable of writing code to demonstrate that understanding.
Puzzles
You have three water bottles. Bottle #1 (b1) can be filled with 10 litres, bottle #2 (b2) with 6 litres, and bottle #3 (b3) with 5 litres of water respectively. There are no markings on the bottles so you cannot measure them if the bottles are filled less than their maximum capacity. Assuming that you have an unlimited supply of water, by filling or emptying these three bottles, how would you get from
the start state to the end state? What is the solution with the fewest steps?
The code should be able to solve this problem for the following parameters:
a) Start: b1 = 10, b2 = 0, b3 = 0
End: b1 = 5, b2 = 5, b3 = 0
b) Start: b1 = 2, b2 = 0, b3 = 0
End: b1 = 4, b2 = 0, b3 = 0
c) Start: b1 = 3, b2 = 0, b3 = 0
End: b1 = 0, b2 = 0, b3 = 1
b) Repeat (c) but now change the maximum of the bottles [(i) b1: 11, b2: 7 b3: 4].