Learning ruby - day 1

Table of Contents
Introduction
Hey guys, welcome to my blog recording my ruby self-taught process
I decided to learn this amazing language while I was trying to solving some ruby challenges to get my tenth badge in HackerRank
Ok let's do it
Create my first program in ruby
print "Hello World!!!"
Output
PS D:\Workplace> ruby hello-world.rb
Hello World!!!

print "\n" equals puts

print "First line "
print "still first line\n"
puts "Second line"
puts "Thirld line"
Output
First line still first line
Second line
Thirld line
Everything is object
print else
Output
main
Call Object Method

check whether the num is even or odd

num = 2
print num.even?
Output
true
Call Object Method Parameters

print the quotient of num and 2

num = 2
num.div 2
print num
Output
1
First loop

print the value of each member in array to the power of 2

array = [1, 2, 3, 4, 5]
array.each do |num|
    puts num.pow 2
end
Output
1
4
9
16
25
First function

print ASCII chars of any decimal number in array if number is not odd

def print_char(array)
    array.each do |num|
        puts num.chr unless num.odd?
    end
end
array = [65, 66, 67, 68, 69, 70, 71]
print_char(array)
Output
B
D
F
Array
Working on single element

Delete last element

arr.pop

Delete first element

arr.shift

Delete element at position a given position

arr.delete_at(2)
Working on multiple elements

Delete all occurrences of a given element

arr.delete(5)

Delete elements if

arr.delete_if {|a| a < 2}

Delete elements unless

arr.keep_if {|a| a < 4}
Create subarray

Select elements from array to subarray

arr2 = arr.select {|a| a > 2}
print arr2

Reject elements from array to subarray

arr2 = arr.reject {|a| a > 2}

Reject elements from array till returns false for the first time

arr2 = arr.drop_while {|a| a > 1}
Hash, a dictionary-like data structures
# initialize and set default value
empty_hash = Hash.new 
empty_hash.default = 1
# or
default_hash = Hash.new(1)
Set value
new_hash = {"key1" => 12, "key2" => 50}
# or
new_hash = Hash.new
new_hash["key1"] = 12
new_hash["key2"] = 50
# or
new_hash.store("key1", 12)
new_hash.store(1512032, 50)
Loop with hash
hash.each do |key, value|
    puts key
    puts value
end
# or
hash.each do |array|
    # now key is array[0], value is array[1]
    puts array[0]
    puts array[1]
end
Delete pair
# Delete specific key
hash.delete("key1")
# Delete if
hash.keep_if {|key, value| key.is_a? Integer} 
# or 
hash.delete_if {|key, value|key.even? }
Infinite Loop
i = 0
loop do
    puts i
    i += 1
    break if i == 10
end
Output
1
2
3
4
5
6
7
8
9
10
Conclusion
We have learned how to print output
How to do some basic loop and function
Learned some common methods of array and a dictionary-like data structures called hash
I'd like to thank HackerRank for giving me a chance to acknowledge and be interesting in this cool language
If guys found Ruby is fascinating, please come to the link below and solve some Ruby challenges with me
If you have any question or suggestion, please let me know at the comment section below.
OK I'm going to wrap this up here
Thanks for reading my blog

33

This website collects cookies to deliver better user experience

Learning ruby - day 1