McNuggets problem: Difference between revisions

Add CLU
(Added solution for Action!)
(Add CLU)
Line 488:
{{out}}
<pre>Maximum non-McNuggets number is 43</pre>
 
=={{header|CLU}}==
<lang clu>% Recursive nugget iterator.
% This yields all the nugget numbers of the given box sizes from start to max.
gen_nuggets = iter (start, max: int, sizes: sequence[int]) yields (int)
si = sequence[int]
if si$empty(sizes) then
yield(start)
else
for i: int in int$from_to_by(start, max, si$bottom(sizes)) do
for j: int in gen_nuggets(i, max, si$reml(sizes)) do
yield(j)
end
end
end
end gen_nuggets
 
start_up = proc ()
max = 100
ab = array[bool]
po: stream := stream$primary_output()
nuggets: ab := ab$fill(0,max+1,false)
for nugget: int in gen_nuggets(0, max, sequence[int]$[6,9,20]) do
nuggets[nugget] := true
end
maxn: int
for i: int in ab$indexes(nuggets) do
if ~nuggets[i] then maxn := i end
end
stream$putl(po, "Maximum non-McNuggets number: " || int$unparse(maxn))
end start_up</lang>
{{out}}
<pre>Maximum non-McNuggets number: 43</pre>
 
=={{header|COBOL}}==
2,095

edits