Jewels and stones: Difference between revisions
Add Cowgol
(Added XPL0 example.) |
Not a robot (talk | contribs) (Add Cowgol) |
||
Line 589:
<pre>3
0</pre>
=={{header|Cowgol}}==
<lang cowgol>include "cowgol.coh";
sub count_jewels(stones: [uint8], jewels: [uint8]): (count: uint16) is
var jewel_mark: uint8[256];
MemZero(&jewel_mark as [uint8], 256);
while [jewels] != 0 loop
jewel_mark[[jewels]] := 1;
jewels := @next jewels;
end loop;
count := 0;
while [stones] != 0 loop
count := count + jewel_mark[[stones]] as uint16;
stones := @next stones;
end loop;
end sub;
sub print_and_count(stones: [uint8], jewels: [uint8]) is
print(jewels);
print(" in ");
print(stones);
print(": ");
print_i16(count_jewels(stones, jewels));
print_nl();
end sub;
print_and_count("aAAbbbb", "aA");
print_and_count("ZZ", "z");</lang>
{{out}}
<pre>aA in aAAbbbb: 3
z in ZZ: 0</pre>
=={{header|D}}==
|