基于Delphi 7的百鸡问题求解
百鸡问题求解
问题描述: 假设公鸡价格为每只5元,母鸡价格为每只3元,小鸡价格为3只1元。现需用100元购买100只鸡,请使用Delphi 7编程列出所有可行的购鸡方案。
算法设计:
采用穷举法,通过三重循环嵌套遍历所有可能的公鸡、母鸡和小鸡数量组合。在循环过程中,判断每种组合是否满足以下条件:
- 公鸡数量、母鸡数量和小鸡数量之和等于100
- 公鸡总价、母鸡总价和小鸡总价之和等于100元
若满足上述条件,则输出该组合作为一种可行的购鸡方案。
代码实现:
program ChickenProblem;
uses
SysUtils;
var
i, j, k: Integer;
begin
for i := 0 to 20 do begin // 公鸡数量最大为 20 只
for j := 0 to 33 do begin // 母鸡数量最大为 33 只
k := 100 - i - j; // 小鸡数量由总只数和公鸡、母鸡数量决定
if (k >= 0) and (k mod 3 = 0) then begin // 小鸡数量必须为非负数且为3的倍数
if (i * 5 + j * 3 + k div 3 = 100) then begin // 判断总价是否为100元
WriteLn('公鸡: ', i, ' 只,母鸡: ', j, ' 只,小鸡: ', k, ' 只');
end;
end;
end;
end;
ReadLn;
end.
程序运行结果:
程序运行后,将在控制台输出所有满足条件的购鸡方案。
168.46KB
文件大小:
评论区