in

Ruby quiz

Ruby quiz_628c0bbe51c03.jpeg

Hi, dev.to!
Here is my first post there. I hope there are people who like mind games. So I would like to introduce you to some interesting puzzles.



1. Choose the correct result of the code (ruby 3.0):

{ language: 'ruby’, 'position' => 'engineer' }.transform_keys({ language: 'rust }, &:to_sym)
Enter fullscreen mode

Exit fullscreen mode

  • {"rust"=>"ruby", :position=>"engineer"}
  • { :rust => 'ruby', :position => 'engineer' }
  • { "rust" => :ruby, 'position' => :engineer }
  • { :rust => :ruby, :position => :engineer }
Answer

{"rust"=>"ruby", :position=>"engineer"}



2. Choose the correct result of the code (ruby 3.0):

{ e: :n, g: :i, n: :e, e: :r }.except(:e)
Enter fullscreen mode

Exit fullscreen mode

  • NoMethodError (undefined method 'except')
  • {:g=>:i, :n=>:e}
  • {:g=>:i, :n=>:e, :e => :r}
  • {:e => :n, :g=>:i, :n=>:e}
Answer

{:g=>:i, :n=>:e}



3. Choose the wrong way to call a lambda

  • ->(){}::call
  • ->(){}[]
  • ->(){}()
  • ->(){}::===
Answer

->(){}()



4. Choose the correct result of the code

!?q::!. |001
Enter fullscreen mode

Exit fullscreen mode

  • true
  • false
  • raise an error
  • 1
Answer

false



5. Choose the correct way to create an array [0,1,2,3,4,5]

  • Array[0..5]
  • (0..4).take(5)
  • [*0..5]
  • String(012345).split('').map(&:to_i)
Answer

[*0..5]



6. There is a code

class Animal
  @@count = 0

  def self.inc
    @@count += 1
  end

  def self.count
    @@count
  end  
end

class Cat < Animal
  @@count = 100

  def self.count
    @@count
  end
end

Animal.inc
Cat.inc
Enter fullscreen mode

Exit fullscreen mode



Choose the correct result of the code

[Animal.count, Cat.count]
Enter fullscreen mode

Exit fullscreen mode

  • [1, 101]
  • [101, 101]
  • [1, 102]
  • [102, 102]
Answer

[102, 102]



7. There is a code

class Item
  def self.count
    $COUNT
  end

  def self.increment
    $COUNT += 1
  end
end

BEGIN { $COUNT = 0 }
Item.increment
Enter fullscreen mode

Exit fullscreen mode



Choose the correct result of the code

Item.count
Enter fullscreen mode

Exit fullscreen mode

  • 0
  • 1
  • 101
  • undefined method '+' for nil:NilClass
Answer

1

What do you think?

Silver 1

Written by yulica

Leave a Reply

Your email address will not be published.

      How to create Python library

      NodeJS and ExpressJS – Hello World 👨🏻‍💻_628c0bb58e851.jpeg

      NodeJS and ExpressJS – Hello World 👨🏻‍💻