Execute a Markov algorithm: Difference between revisions

m
Line 4,894:
 
=={{header|Ruby}}==
{{works with|Ruby|13.82.70}}
<syntaxhighlight lang="ruby">def setup(ruleset)
ruleset.each_line.inject([]) do |rules, line|
Line 4,907:
end
 
def marcovmarkov(ruleset, input_data)
rules = setup(ruleset)
while (matched = rules.find { |match, replace, term|
Line 4,928:
EOS
 
puts marcovmarkov(ruleset1, "I bought a B of As from T S.")
 
ruleset2 = <<EOS
Line 4,940:
EOS
 
puts marcovmarkov(ruleset2, "I bought a B of As from T S.")
 
ruleset3 = <<EOS
Line 4,956:
EOS
 
puts marcovmarkov(ruleset3, "I bought a B of As W my Bgage from T S.")
 
ruleset4 = <<EOS
Line 4,989:
EOS
 
puts marcovmarkov(ruleset4, "_1111*11111_")
 
ruleset5 = <<EOS
Line 5,012:
EOS
 
puts marcovmarkov(ruleset5, "000000A000000")</syntaxhighlight>
 
{{out}}
2

edits