You are on page 1of 10

Ring Documentation, Release 1.

• False = 0
• nl = new line
• NULL = empty string = “”
• Everything evaluates to true except 0 (False).
Example:
# output = message from the if statement

if 5 # 5 evaluates to true because it's not zero (0).


see "message from the if statement" + nl
ok

20.11. Comments about evaluation 192


CHAPTER

TWENTYONE

CONTROL STRUCTURES - SECOND STYLE

In this chapter we are going to learn about the second style of control structures provided by the Ring programming
language.

21.1 Branching

• If Statement
Syntax:
if Expression
Block of statements
elseif Expression
Block of statements
else
Block of statements
end

Example:
put "
Main Menu
---------
(1) Say Hello
(2) About
(3) Exit

" get nOption

if nOption = 1 put "Enter your name : " get name put "Hello " + name + nl
elseif nOption = 2 put "Sample : using if statement" + nl
elseif nOption = 3 bye
else put "bad option..." + nl
end

• Switch Statement
Syntax:
switch Expression
case Expression
Block of statements
else
Block of statements
end

193
Ring Documentation, Release 1.7

Example:
Put "
Main Menu
---------
(1) Say Hello
(2) About
(3) Exit

" Get nOption

Switch nOption
Case 1 Put "Enter your name : " Get name Put "Hello " + name + nl
Case 2 Put "Sample : using switch statement" + nl
Case 3 Bye
Else Put "bad option..." + nl
End

21.2 Looping

• While Loop
Syntax:
while Expression
Block of statements
end

Example:
While True

Put "
Main Menu
---------
(1) Say Hello
(2) About
(3) Exit

" Get nOption

Switch nOption
Case 1
Put "Enter your name : "
Get name
Put "Hello " + name + nl
Case 2
Put "Sample : using while loop" + nl
Case 3
Bye
Else
Put "bad option..." + nl
End
End

• For Loop
Syntax:

21.2. Looping 194


Ring Documentation, Release 1.7

for identifier=expression to expression [step expression]


Block of statements
end

Example:
# print numbers from 1 to 10
for x = 1 to 10 put x + nl end

Example:
# Dynamic loop
Put "Start : " get nStart
Put "End : " get nEnd
Put "Step : " get nStep
For x = nStart to nEnd Step nStep
Put x + nl
End

Example:
# print even numbers from 0 to 10
for x = 0 to 10 step 2
Put x + nl
end

Example:
# print even numbers from 10 to 0
for x = 10 to 0 step -2
put x + nl
end

• For in Loop
Syntax:
for identifier in List/String [step expression]
Block of statements
end

Example:
aList = 1:10 # create list contains numbers from 1 to 10
for x in aList put x + nl end # print numbers from 1 to 10

21.3 Exceptions
try
Block of statements
catch
Block of statements
end

21.3. Exceptions 195


CHAPTER

TWENTYTWO

CONTROL STRUCTURES - THIRD STYLE

In this chapter we are going to learn about the third style of control structures provided by the Ring programming
language.

22.1 Branching

• If Statement
Syntax:
if Expression {
Block of statements
elseif Expression
Block of statements
else
Block of statements
}

Example:
Load "stdlib.ring"

print("
Main Menu
---------
(1) Say Hello
(2) About
(3) Exit
")

nOption = getnumber()

if nOption = 1 {
print("Enter your name : ")
name = getstring()
print("Hello #{name}\n")
elseif nOption = 2
print("Sample : using if statement\n")
elseif nOption = 3
bye
else
print("bad option...\n")
}

196
Ring Documentation, Release 1.7

• Switch Statement
Syntax:
switch Expression {
case Expression
Block of statements
else
Block of statements
}

Example:
Load "stdlib.ring"

print("
Main Menu
---------
(1) Say Hello
(2) About
(3) Exit

")

nOption = GetString()

switch nOption {
case 1
print("Enter your name : ")
name = getstring()
print("Hello #{name}\n")
case 2
print("Sample : using switch statement\n")
case 3
Bye
else
print("bad option...\n")
}

22.2 Looping

• While Loop
Syntax:
while Expression {
Block of statements
}

Example:
Load "stdlib.ring"

While True {

print("
Main Menu
---------

22.2. Looping 197


Ring Documentation, Release 1.7

(1) Say Hello


(2) About
(3) Exit

")

nOption = GetString()

switch nOption {
case 1
print("Enter your name : ")
name = getstring()
print("Hello #{name}\n")
case 2
print("Sample : using switch statement\n")
case 3
Bye
else
print("bad option...\n")
}

• For Loop
Syntax:
for identifier=expression to expression [step expression] {
Block of statements
}

Example:
# print numbers from 1 to 10
load "stdlib.ring"
for x = 1 to 10 {
print("#{x}\n")
}

Example:
load "stdlib.ring"

# Dynamic loop
print("Start : ") nStart = getnumber()
print("End : ") nEnd = getnumber()
print("Step : ") nStep = getnumber()
for x = nStart to nEnd step nStep {
print("#{x}\n")
}

Example:
load "stdlib.ring"

# print even numbers from 0 to 10


for x = 0 to 10 step 2 {
print("#{x}\n")
}

22.2. Looping 198


Ring Documentation, Release 1.7

Example:
load "stdlib.ring"

# print even numbers from 10 to 0


for x = 10 to 0 step -2 {
print("#{x}\n")
}

• For in Loop
Syntax:
for identifier in List/String [step expression] {
Block of statements
}

Example:
load "stdlib.ring"

aList = 1:10 # create list contains numbers from 1 to 10


for x in aList { print("#{x}\n") } # print numbers from 1 to 10

Example:
load "stdlib.ring"

aList = 1:10 # create list contains numbers from 1 to 10


# print odd items inside the list
for x in aList step 2 {
print("#{x}\n")
}

When we use (For in) we get items by reference.


This means that we can read/edit items inside the loop.
Example:
load "stdlib.ring"

aList = 1:5 # create list contains numbers from 1 to 5


# replace list numbers with strings
for x in aList {
switch x {
case 1 x = "one"
case 2 x = "two"
case 3 x = "three"
case 4 x = "four"
case 5 x = "five"
}
}
print(aList) # print the list items

22.3 Exceptions

22.3. Exceptions 199


Ring Documentation, Release 1.7

try {
Block of statements
catch
Block of statements
}

22.3. Exceptions 200


CHAPTER

TWENTYTHREE

GETTING INPUT

We can get input from the keyboard using


• The Give Command
• The GetChar() Function
• The Input() Function

23.1 Give Command

Syntax:
Give VariableName

Example:
See "Enter the first number : " Give nNum1
See "Enter the second number : " Give nNum2
See "Sum : " + ( 0 + nNum1 + nNum2 )

Output:
Enter the first number : 3
Enter the second number : 4
Sum : 7

23.2 GetChar() Function

We can get one character from the standard input using the GetChar() function
Syntax:
GetChar() ---> Character

Example:
While True
See "
Main Menu
(1) Say Hello
(2) Exit
"
Option = GetChar()

201

You might also like