ruby - How to reuse a random letter -


i'm trying code randomly generate letter begin each word of "zip", "zap" , "zop". different letter should chosen every time code run each word needs start same letter.

i can't seem reuse random letter 3 times:

def generate   puts "3... 2... 1... improv: (enter letter)"   text = gets.chomp.upcase   puts text + "ip, " + text + "ap, " + text + "op!"   puts "my turn!"   yield   puts g_l(1) + "ip, " + "#{g_l(1)}ap, " + "#{g_l(1)}op!"  end  generate    def g_l(number)     charset = array('a'..'z') - array["a", "e", "i", "o", "u"]     array.new(number) { charset.sample } .join   end end 

what i'm aiming for:

run 1: hip, hap, hop! run 2: dip, dap, dop! run 3: sip, sap, sop! 

what i'm getting:

run 1: hip, zap cop run 2: fip, wap, dop run 3: rip, tap, bop 

i tried find result using terms like: "generating same random letter", "reusing random letter", "storing random number" etc., searches didn't help.

you resampling each time use g_l(1) instead save char = g_l(1) , reuse same char

def generate     puts "3... 2... 1... improv: (enter letter)"         text = gets.chomp.upcase     puts text + "ip, " + text + "ap, " + text + "op!"     puts "my turn!"     yield     char = g_l(1)     puts char + "ip, " + "#{char}ap, " + "#{char}op!" end  generate     def g_l(number)        charset = array('a'..'z') - array["a", "e", "i", "o", "u"]        array.new(number) { charset.sample } .join     end end 

or make whole thing 1 function can call:

def answer     puts "3... 2... 1... improv: (enter letter)"     text = gets.chomp[0].upcase # should able type more 1 letter?     charset = array('a'..'z') - array["a", "e", "i", "o", "u"]     puts text + "ip, " + text + "ap, " + text + "op!"     puts "my turn!"     char = charset.sample     puts char + "ip, " + "#{char}ap, " + "#{char}op!" end  answer 

Comments

Popular posts from this blog

c# - Update a combobox from a presenter (MVP) -

How to understand 2 main() functions after using uftrace to profile the C++ program? -

How to put a lock and transaction on table using spring 4 or above using jdbcTemplate and annotations like @Transactional? -