व्यंजना - क्रम

एक अनुक्रम ब्रेस ब्रैकेट {} में वस्तुओं की एक सूची द्वारा प्रस्तुत किया गया है, जो अल्पविराम द्वारा अलग किया गया है। एक अनुक्रम में परमाणु और अन्य अनुक्रम दोनों हो सकते हैं। उदाहरण के लिए -

{2, 3, 5, 7, 11, 13, 17, 19}
{1, 2, {3, 3, 3}, 4, {5, {6}}}
{{"Zara", "Ayan"}, 52389, 97.25}
{} -- the 0-element sequence

अनुक्रम के एक एकल तत्व को वर्ग कोष्ठक में तत्व संख्या देकर चुना जा सकता है। तत्व संख्या 1 से शुरू होती हैं।

उदाहरण के लिए, यदि x में {5, 7.2, 9, 0.5, 13} है तो x [2] 7.2 है।

मान लीजिए कि x [2] में {11,22,33} शामिल हैं, अब अगर आप x [2] के लिए पूछें तो आपको {11,22,33} मिलते हैं और यदि आप x [2] [3] के लिए पूछें, तो आपको परमाणु 33 मिलते हैं। ।

उदाहरण

#!/home/euphoria-4.0b2/bin/eui

sequence x
x = {1, 2, 3, 4}

for a = 1 to length(x) do
   printf(1, "value of x[%d] = %d\n", {a, x[a]})
end for

यहां, लंबाई () अंतर्निहित फ़ंक्शन है जो अनुक्रम की लंबाई देता है। उपरोक्त उदाहरण निम्नलिखित परिणाम उत्पन्न करता है -

value of x[1] = 1
value of x[2] = 2
value of x[3] = 3
value of x[4] = 4

वर्ण स्ट्रिंग

एक चरित्र स्ट्रिंग सिर्फ एक है sequenceपात्रों का। इसे दो तरीकों में से एक में दर्ज किया जा सकता है -

(a) Using Double Quotes −

"ABCDEFG"

(b) Using Raw String Notation −

-- Using back-quotes
`ABCDEFG`

or

-- Using three double-quotes
"""ABCDEFG"""

अवधारणा को समझने के लिए आप निम्न उदाहरण को आजमा सकते हैं -

#!/home/euphoria-4.0b2/bin/eui

sequence x
x = "ABCD"

for a = 1 to length(x) do
   printf(1, "value of x[%d] = %s\n", {a, x[a]})
end for

यह निम्न परिणाम उत्पन्न करता है -

value of x[1] = A
value of x[2] = B
value of x[3] = C
value of x[4] = D

स्ट्रिंग Arrays

निम्न प्रकार के दृश्यों का उपयोग करके स्ट्रिंग्स की एक सरणी लागू की जा सकती है -

#!/home/euphoria-4.0b2/bin/eui

sequence x = {"Hello", "World", "Euphoria", "", "Last One"}

for a = 1 to length(x) do
   printf(1, "value of x[%d] = %s\n", {a, x[a]})
end for

यह निम्न परिणाम उत्पन्न करता है -

value of x[1] = Hello
value of x[2] = World
value of x[3] = Euphoria
value of x[4] =
value of x[5] = Last One

व्यंजना संरचनाएँ

निम्नानुसार अनुक्रम का उपयोग करके एक संरचना लागू की जा सकती है -

#!/home/euphoria-4.0b2/bin/eui

sequence employee = {
   {"John","Smith"},
      45000,
      27,
      185.5
}
printf(1, "First Name = %s, Last Name = %s\n", {employee[1][1],employee[1][2]} )

यह निम्न परिणाम उत्पन्न करता है -

First Name = John, Last Name = Smith

विभिन्न ऑपरेशन हैं जो सीधे अनुक्रमों पर किए जा सकते हैं। आइए हम उन्हें विस्तार से देखते हैं -

मूत्र संचालन

जब एक अनुक्रम पर लागू किया जाता है, तो एक समान ऑपरेटर वास्तव में अनुक्रम में प्रत्येक तत्व के लिए उसी लंबाई के परिणामों के अनुक्रम का उत्पादन करने के लिए लागू किया जाता है।

#!/home/euphoria-4.0b2/bin/eui

sequence x
x = -{1, 2, 3, 4}

for a = 1 to length(x) do
   printf(1, "value of x[%d] = %d\n", {a, x[a]})
end for

यह निम्न परिणाम उत्पन्न करता है -

value of x[1] = -1
value of x[2] = -2
value of x[3] = -3
value of x[4] = -4

अंकगणितीय आपरेशनस

लगभग सभी अंकगणितीय संचालन निम्नानुसार अनुक्रमों पर किए जा सकते हैं -

#!/home/euphoria-4.0b2/bin/eui

sequence x, y, a, b, c
x = {1, 2, 3}
y = {10, 20, 30}

a = x + y
puts(1, "Value of a = {")

for i = 1 to length(a) do
   printf(1, "%d,", a[i])
end for
puts(1, "}\n")

b = x - y
puts(1, "Value of b = {")
for i = 1 to length(a) do
   printf(1, "%d,", b[i])
end for
puts(1, "}\n")

c = x * 3
puts(1, "Value of c = {")

for i = 1 to length(c) do
   printf(1, "%d,", c[i])
end for
puts(1, "}\n")

यह निम्न परिणाम उत्पन्न करता है -

Value of a = {11,22,33,}
Value of b = {-9,-18,-27,}
Value of c = {3,6,9,}

कमांड लाइन विकल्प

एक उपयोगकर्ता एक यूफोरिया स्क्रिप्ट के लिए कमांड लाइन विकल्प पारित कर सकता है और इसे एक अनुक्रम का उपयोग करके एक्सेस किया जा सकता है command_line() कार्य निम्नानुसार है -

#!/home/euphoria-4.0b2/bin/eui

sequence x

x = command_line()

printf(1, "Interpeter Name: %s\n", {x[1]} )
printf(1, "Script Name: %s\n", {x[2]} )
printf(1, "First Argument: %s\n", {x[3]})
printf(1, "Second Argument: %s\n", {x[4]})

यहाँ printf()यूफोरिया का अंतर्निहित कार्य है। अब यदि आप इस लिपि को निम्न प्रकार से चलाते हैं -

$eui test.ex "one" "two"

यह निम्न परिणाम उत्पन्न करता है -

Interpeter Name: /home/euphoria-4.0b2/bin/eui
Script Name: test.ex
First Argument: one
Second Argument: two