Java语言怎么实现水池应用题,水池的水管可以灌水也可以放水,灌水的时间是放水的2倍水池一直有水,水池灌水和放水的组合有几种,怎么用程序去实现判断的呢?如果不知道水池容量怎么用程序实现
3条回答 默认 最新
关注如图

代码如下
import java.util.ArrayList; import java.util.List; public class PoolApplication { static class WaterLevel { private int capacity; // 水池容量 private int currentLevel; // 当前水位 public WaterLevel(int capacity) { this.capacity = capacity; this.currentLevel = 0; } public boolean isOverflow() { return currentLevel > capacity; } public void fillPool() { currentLevel = capacity; } public void drainPool() { currentLevel = 0; } public void fillAndDrainPoolCombination() { List<String> combinations = new ArrayList<>(); for (int fillTime = 1; fillTime <= capacity * 2; fillTime++) { for (int drainTime = 1; drainTime <= fillTime / 2; drainTime++) { if (fillTime - drainTime <= capacity) { combinations.add("灌入水量:" + fillTime + ",放出水量:" + drainTime); } } } System.out.println("共有" + combinations.size() + "种灌水和放水组合:"); for (String combination : combinations) { System.out.println(combination); } } } public static void main(String[] args) { int poolCapacity = 10; // 水池容量 WaterLevel pool = new WaterLevel(poolCapacity); pool.fillAndDrainPoolCombination(); } }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报