Skip to content

Instantly share code, notes, and snippets.

@shamritskiy3468
Created December 16, 2018 21:19
Show Gist options
  • Save shamritskiy3468/6457b940ca5075146f697de1d22bedc1 to your computer and use it in GitHub Desktop.
Save shamritskiy3468/6457b940ca5075146f697de1d22bedc1 to your computer and use it in GitHub Desktop.
Task4
def make_output(array)
50.times { print "-" }
puts
puts array.join(" - ")
puts ""
end
def generate_array(size)
array = []
size.to_i.times { array << rand(10..30) }
puts "Generated Array:"
array
end
#main logic is here!!! Another is for perfecionism)
def shift(array, shifts)
array.concat(array.shift(shifts.to_i))
array
end
#another variant
#array.rotate(1)
puts "Array size:"
size = gets.chomp
start_ar = generate_array(size)
make_output(start_ar)
puts "Enter shift number"
number_of_shifts = gets.chomp
puts "Reworked Array:"
make_output(shift(start_ar, number_of_shifts))
@aya-soft
Copy link

aya-soft commented Dec 22, 2018

Циклический сдвиг влево - это когда первый элемент становится последним.
array.concat(array.shift(shifts.to_i)) - это не на одну позицию

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment