Skip to content

Create Pipes - Iuliia - Random_Menu.rb #41

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions Iuliia's_Random_Menu.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#input
puts "Please enter how many cookyng styles would you like to tell us about"
styles = gets.chomp.to_i

adj = []
style = []
food = []

styles.times do
puts "Please enter an adjective"
input = gets.chomp
adj << input
end

styles.times do
puts "Please enter a cooking style"
input = gets.chomp
style << input
end

styles.times do
puts "Please enter a food name"
input = gets.chomp
food << input
end

puts "Please enter how many items of menu would you like to see (#{styles} items max)"
number = gets.chomp.to_i

#output
if number > styles
puts "You entered an integer greater than #{styles}. We will show you a menu for #{styles} items."
number = styles
end

puts "Menu:"

selected_adj = []
selected_style = []
selected_food = []

number.times do |i|

selected_adj << (adj - selected_adj).sample
selected_style << (style - selected_style).sample
selected_food << (food - selected_food).sample

puts "#{i+1}. #{selected_adj.last} #{selected_style.last} #{ selected_food.last}"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we talked about this in class, but I like this idea for making sure you don't repeat items. A similar but possibly cleaner way would to be to delete the sampled word from the list, rather than subtracting the lists every time. Something like:

selected_adj = adj.sample
adj.delete(selected_adj)

end