Home » Ruby programming

Ruby Syntax

Ruby syntax: Here, we are going to learn about the basic syntaxes, like variable declaration syntax, print statement syntax, conditional statement syntax etc.
Submitted by Hrithik Chandra Prasad, on July 20, 2019

Ruby syntax

The syntax of Ruby is widely similar to that of Python and Perl. Keywords and braces are used to define the blocks for the code. We have got various keywords to define classes and objects. The syntax differs from Python and Perl in a way that all the instance variables are kept private and are only accessible through Access Modifiers.

Let us go through the basic syntaxes:

Variables

Variables are used to hold some data and reside at a specific memory location. Ruby supports five types of variables:

i) Global variable

You need to add $ at the beginning of the variable name if you want to make the variable global. By default, nil is assigned to the variable if you don't give a value to it explicitly.

Example:

    $global_variable = 90

ii) Instance variable

If you want to create an Instance variable, add @ at the beginning of its name. Here also nil is assigned to it in case it is not initialized.

Example:

    @cust_id = 12
    @student_name = "Hrithik"

iii) Class variable

Class variables begin with @@ and it is mandatory to initialize them.

Example:

    @@people_present = 0

iv) Local variable

Local variables start with _ or a lowercase letter. The scope of a local variable starts from opening braces { and ends with the closing braces }.

Example:

    myname = "Hrithik"
    _siteaddress= "Includehelp.com"

v) Constants

They always begin with uppercase letters. You will have to face an error if you are referencing a constant which is not initialized.

    CONSTANT12 = 890
    CONSTANTSTR = "INCLUDEHELP"

Strings

Strings are a sequence of characters. They can be declared in Ruby either by using single quotes ' ' or by using double quotes " ".

    "You are learning at Includehelp.com"
    'This is also a string'

Arrays

An array can be declared in Ruby in the following way:

    [1,'Shyam',5.34,'Include help']

Hashes

A hash in Ruby looks like the example which is given below,

    {name: "Harish"}
    {:name=> "Satish"}

Basic structure of a Ruby code

The basic structure of Ruby code is quite easy to understand. The method gets is used to input data from the user at the run time and the method puts is used for displaying the information to the user.

Observe the code given below, you will find chomp, it is used for eliminating the new line character \n from the data which is entered.

You will also see that Type conversion is taking place. By default, the values are of string type and they are getting converted into integer type through the .to_i method.

puts "Enter first value"
num=gets.chomp

puts "Enter second value"
num1=gets.chomp

pro=num.to_i*num1.to_i

puts "The product of #{num} and #{num1} is #{pro}"

Output

Enter first value
12
Enter second value
34
The product of 12 and 34 is 408

Flow controls in Ruby

Following are the flow control statements which are supported in Ruby programming language:

  1. if statement
  2. if/else statement
  3. elsif statement
  4. unless statement
  5. switch statement

Let us study each of them with examples,

a) if statement

if statement only works for a single expression. It executes it and checks whether the statement stands to be true or false.

Syntax:

    if (condition)
         #statement executes if the condition comes out to be True
    end

Example:

a = 70
b = 9

if a>b
	puts "a is greater"
end

Output

a is greater

(b) if-else statement

It is very similar to if statement, only it has an additional else with it. It works in the way that if the if condition is True then the code block inside it executes otherwise the code block inside else executes.

Syntax:

    if(condition)
        #code block
    else
        #code block
    end

Example:

a = 70
b = 900

if a>b
	puts "a is greater"
else
	puts "b is greater"
end

Output

b is greater

(c) elsif statement

If there are more than two options in your code, then elsif statement can be used. First the if condition is checked, if it comes to be false then the pointer moves to elsif condition, if it turns out to be true to the situation then elsif code block executes.

Syntax:

    if (condition)
	    #statements
    elsif(condition)
	    #statements
    else
	    #statements
    end

Example:

a = 70
b = 900
c = 567

if (a>b and a>c)
	puts "a is greater"
elsif (b>a and b>c)
	puts "b is greater"
else
	puts "c is greater"
end

Output

b is greater

(d) unless statement

unless statement is used to verify a statement false rather than it is true.

Syntax:

    unless (condition)
	    #code block
    else
	    #code block
    end

Example:

Entry = false
unless Entry
	puts "you have to wait"
else
	puts "you are good to go!"
end

Output

you have to wait

(e) switch statement

The switch statement is used where you have multiple options. It is similar to elsif statement but it is more preferable than elsif. when keyword is used to check the conditions and whichever comes out to be true, the statements under it executes.

Syntax:

    case (variable name)
    when (condition)
	    #statements
    when (condition)
	    #statements
    else
 	    #statements
    end

Example:

puts "which fruit do you like?"
fruit = gets.chomp

case (fruit)
when 'apple'
	puts 'Red colour'
when 'banana'
	puts 'Yellow colour'
when 'papaya'
	puts 'Green colour'
when 'kiwi'
	puts 'Green colour'
else
	puts 'bad choice'
end

Output

Which fruit do you like?
banana
Yellow color





Comments and Discussions

Ad: Are you a blogger? Join our Blogging forum.
Learn PCB Designing: PCB DESIGNING TUTORIAL




Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing » Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.