Hex words: Difference between revisions

1,326 bytes added ,  1 year ago
(Created Nim solution.)
Line 1,486:
bade ➡ 47838 ➡ 3
abed ➡ 44013 ➡ 3</pre>
=={{header|Ruby}}==
<syntaxhighlight lang="ruby" line>def report(a)
puts
a.each {|hw| puts "%6s %8d %d" % hw}
puts "Total count of these words: #{a.size}"
end
 
hexwords = File.readlines("unixdict.txt", chomp: true).reject{|w| w.size < 4 || w.match?(/[^abcdef]/) }
res = hexwords.map{|hw| [hw, hw.to_i(16), 1 + (hw.to_i(16) - 1) % 9]}.sort_by(&:last)
report( res )
report( res.reject{|hw| hw[0].chars.uniq.size < 4}.sort_by{|w| -w[1]} )
</syntaxhighlight>
{{out}}
<pre> ababa 703162 1
abbe 43966 1
dada 56026 1
deaf 57007 1
decade 14600926 1
cede 52958 2
feed 65261 2
abed 44013 3
added 712173 3
bade 47838 3
beebe 782014 4
decca 912586 4
dade 56030 5
bead 48813 6
deface 14613198 6
babe 47806 7
fade 64222 7
dead 57005 8
efface 15727310 8
facade 16435934 8
accede 11325150 9
beef 48879 9
cafe 51966 9
dacca 896202 9
deed 57069 9
face 64206 9
Total count of these words: 26
 
facade 16435934 8
efface 15727310 8
deface 14613198 6
decade 14600926 1
accede 11325150 9
decca 912586 4
fade 64222 7
face 64206 9
deaf 57007 1
cafe 51966 9
bead 48813 6
bade 47838 3
abed 44013 3
Total count of these words: 13
</pre>
 
=={{header|V (Vlang)}}==
1,149

edits