ABC words: Difference between revisions

Content added Content deleted
m (→‎{{header|REXX}}: added a comment.)
Line 541: Line 541:


=={{header|Julia}}==
=={{header|Julia}}==
See [[]] for the foreachword function.
<lang julia>function lettersinorder(dictfile, letters)
<lang julia>function isabcword(w, _)
chars = sort(collect(letters))
positions = [findfirst(c -> c == ch, w) for ch in "abc"]
for word in split(read(dictfile, String))
positions = [findfirst(c -> c == ch, word) for ch in chars]
return all(!isnothing, positions) && issorted(positions) ? w : ""
all(!isnothing, positions) && issorted(positions) && println(word)
end
end
end


lettersinorder("unixdict.txt", "abc")
foreachword("unixdict.txt", isabcword)
</lang>{{out}}
</lang>{{out}}
<pre>
<pre>
Word source: unixdict.txt
aback

abacus
aback abacus abc abdicate abduct abeyance
abc
abject abreact abscess abscissa abscissae absence
abdicate
abstract abstracter abstractor adiabatic aerobacter aerobic
abduct
albacore alberich albrecht algebraic alphabetic ambiance
abeyance
ambuscade aminobenzoic anaerobic arabic athabascan auerbach
abject
diabetic diabolic drawback fabric fabricate flashback
abreact
halfback iambic lampblack leatherback metabolic nabisco
abscess
paperback parabolic playback prefabricate quarterback razorback
abscissa
roadblock sabbatical snapback strabismic syllabic tabernacle
abscissae
absence
abstract
abstracter
abstractor
adiabatic
aerobacter
aerobic
albacore
alberich
albrecht
algebraic
alphabetic
ambiance
ambuscade
aminobenzoic
anaerobic
arabic
athabascan
auerbach
diabetic
diabolic
drawback
fabric
fabricate
flashback
halfback
iambic
lampblack
leatherback
metabolic
nabisco
paperback
parabolic
playback
prefabricate
quarterback
razorback
roadblock
sabbatical
snapback
strabismic
syllabic
tabernacle
tablecloth
tablecloth
</pre>
</pre>