Arrays

Arrays
इससे
पहले कि हम Array को समझें , हम एक बार फिर समझने
की कोशिश करते हैं
कि Variable
क्या होता है | Computer
में विभन्न प्रकार के मानों को Store करने के
लिए Memory में कुछ जगह की आवश्यकता होती है |
अलग
– अलग प्रकार के मनो को Memory में Store करने के लिए अलग – अलग Size के Memory की आवश्यकता होती है |
जैसे
यदि Integer
प्रकार के मान को Memory में Store करना हो तो Program को दो Byte की आवश्यकता होती है जबकि एक Character प्रकार के
मान को Memory में Store करने के लिए
उसे केवल एक Byte की ही जरुरत होती है |
मानलो
कि हम एक ऐसी Memory Location चाहते हैं जहां Integer
प्रकार के मान Store हो सकें |
ये
काम हम निम्न Statement Code लिख कर सकते हैं
int
total;
चलिए
, समझने की कोशिश करते हैं कि Compiler इस Statement
से क्या समझता है और क्या काम करता है |
जब
Compiler
को int keyword मिलता है , तो Compiler
Memory में दो Bytes की Free Space खोजता है | Memory
में जहां पर भी Compiler को दो Bytes की Space प्राप्त हो जाती है, Compiler उसे Reserve कर लेता है और उस दो Bytes के Memory Block का नाम total रख
देता है | इस Statement
के बाद यदि हम निम्न Statement लिखते हैं
total
= 100;
तो
ये Statement
Computer को बताता है कि जिस Reserved Memory Block का नाम total है उस Memory Block पर मान 100 Store कर दें |
यानी
Compiler
उस Memory Location पर 100 Store कर देता है जिसका नाम total है |
सारांश
में कहें तो कह सकते हैं कि Variable किसी Reserved
Memory Location का एक नाम होता है , जिसका प्रयोग करके Compiler
विभन्न प्रकार के मानों को किसी Memory Location पर Store करता है व विभन्न प्रकार व मानों को
प्राप्त करता है |
मानलो
कि किसी Company
में 10 Employee काम करते है और उन्हें Diwali
का Bonus देना है |
इस
स्थिति में यदि हम सामान्य तरीके से Program बनाते
हैं , तो हमें हर Employee की Salary को
Store करने के लिए 10 Variable Declare करने होंगे और Calculate होने वाले Bonus को Store करने के लिए भी दस Variable
Declare करने होंगे |
हम
समझ सकते हैं कि अब हमें कम से कम 20 Variables के साथ प्रक्रिया करनी है | 20
Variables के साथ प्रक्रिया करना हालांकि ज्यादा कठिन नहीं है ,
लेकिन यदि यहाँ 10 Employees की जगह यदि Company में 1000 Employees होते तो हमें 1000
Variables Declare करने पड़ते |
1000 Variables में हर Employee कि
Salary Store करने के लिए और 1000 Variables में
Calculate होने वाले
Bonus को Store करने के लिए |
यदि
ऐसी स्थिति हो जाए तो ये सामान्य सी समस्या भी काफी जटिल हो जाएगी |
Programmer को 2000 Variables को Manage करना
होगा जो कि एक बहुत ही जटिल काम है | इस
प्रकार की समस्या के समाधान के लिए “C” में Array
का प्रयोग किया जा सकता है |
जब
हमें एक ही Data Type के ढेर सारे Data के साथ प्रक्रिया करनी होती है , तब हम उन ढेर सारे Data को ठीक से Manage करने के लिए Array का प्रयोग कर सकते हैं | “C”
Language में Array एक ऐसा Variable होता है , जो एक ही प्रकार के बहुत सारे Data को Memory
में Store करके रख सकता है |
यानी
Array
Create करके वास्तव में हम एक ही समय में एक ही Data Type के बहुत से Variables Create करते हैं |
हम
एक उदाहरण से इसी बात को समझने की कोशिश करते हैं |
एक
कक्षा में अमित नाम के कई विद्यार्थी हो सकते है |
इसलिए
हर विद्यार्थी को पहचानने के लिए हर विद्यार्थी के नाम के साथ उसकी जाती का उल्लेख
किया जाता है या फिर हर विद्यार्थी के नाम के साथ कोई Extension
लगा कर उसकी अलग से पहचान बना दी जाती है |
जैसे
अमित 1
, अमित 2 , अमित 3 आदि |
यहां
हम देख सकते हैं कि नाम तो एक ही है , लेकिन हर नाम की पहचान एक नाम की पहचान एक
अलग विद्यार्थी के रूप में होती है |
यही
प्रक्रिया हम Array के साथ प्रयोग करते हैं , जिसमें Array
का नाम तो एक ही होता है , लेकिन Variables कई
होते हैं | जब हम Variable
को Array के रूप में Declare करते हैं , तब उस Array Variable के नाम के साथ एक
अंक का प्रयोग “C” Compiler स्वयं ही कर लेता है |
इस
अंक को Index
Number कहते है |
एक
Array
में हम समान प्रकार के एक से अधिक मानों को Store कर सकते हैं | किसी
Array
में जितने भी Data Store होते है , वे Data
Array के Element कहलाते हैं और इन Elements
की पहचान एक Logical Address द्वारा होती है ,
जिसे Index Number कहते
हैं |
किसी
भी Array
में Store किया जाने वाला पहला मान हमेंशा Index
Number b पर Store होता है और फिर क्रम से
उसके आगे के Memory Locations पर मान Store होते हैं | Array
का Index Number 0 किसी भी Array का Base Address होता है |
एक
Array
में Data Store करना पड़ता है |
Array
को Declare करने के लिए निम्न Format का प्रयोग होता है |
Data_TypeArray_Name[Array_Size]
Data_Type
जिस प्रकार के Data हमें इस Array
Variable में Store करना है |
Array_Name
“C” Compiler जिस नाम से Array को पहचानता है
, वह नाम |
[Array_Size] इस कोष्टक में Array की Size Define की जाती है जो “C” Compiler को यह बताता है कि Array में कितने Element
Store होंगे या कितने Data Store होंगे |
यह
कोष्टक बनाना जरुरी होता है |
जब
हम कोई Array
Declare करते हैं , तब हमें Array की Size
भी Define करनी होती है |
ये
Size
ही तय करता है कि हम Array में कितने Data
Store करना चाहते हैं |
मानलो
कि हम 10
Employees के Bonus को Store करने के लिए Memory में Space Create करना है , तो हमें Array का Declaration निम्नानुसार करना पड़ता है |
int
Bonus [10];
ये
Statement
Memory में 20 Bytes की जगह Reserve करता है और हर दो Bytes को एक Index Number
Assign कर देता है | यानी
Memory
में निम्नानुसार 10 Variables Create होते हैं
|
Bonus
[0]
Bonus
[1]
Bonus
[2]
Bonus
[3]
Bonus
[4]
Bonus
[5]
Bonus
[6]
Bonus
[7]
Bonus
[8]
Bonus
[9]
सारांश
में कहें तो Array एक ऐसा तरीका है , जिसमें हम एक
ही समय में एक ही प्रकार के Data Type के कई मान Store
करने के लिए एक से अधिक Variables Create करते
हैं | कोई Array
कितने Variables Create करेगा यानी किसी Array
में कितने मान Store किए जा सकते हैं , ये बार
Array की Define की गई Size पर निर्भर करता है | हम
यहां देख सकते हैं कि Create होने वाले सभी Variables
का नाम तो समान है , लेकिन सभी को उनके Index Number के आधार पर अलग – अलग मान जा सकता है |
Array
हमेंशा Memory में एक Continuous
Memory Locations पर Store होता है |
यानी
यदि किसी Integer प्रकार के Array की Size 5 है तो वह Memory में
उसी स्थान पर Space Reserve करेगा जहां पर उसे 12
Bytes पुरे व Continuously प्राप्त होंगे |
जैसे
मानलो कि हमें 5 Student के Roll Number ,
Memory Array जिसकी Size 5 element की हो , Declare
करते है |
int
roll_num[5]
ये
Declaration
Memory में 5 Variable के लिए 5 Memory
Locations बनाता है , जिसमें हर एक की Memory Space 2 Byte की होती है , क्योंकि हमने int प्रकार का Array
Declare किया है | इस
प्रकार एक ही नाम roll_num के 5
Memory Locations क्रमशः roll_num [0] , roll_num [1] ,
roll_num [2] , roll_num [3] , roll_num [4] बन जाते हैं , जिसमें
हर एक में int प्रकार का एक Roll Number Store हो सकता है | इसे
हम निम्नानुसार प्रदर्शित कर सकते हैं |
इस
प्रकार पहला Roll No . Array के प्रथम Logical
Address Index No 0 पर Store होगा |
दूसरा
Roll
No . Array के Logical Address index No 1 पर Store
होगा और यह क्रम इसी प्रकार से निम्नानुसार चलता रहेगा |
माना
कि क्रम से 5 विद्यार्थीयों के Roll Number
100 , 101 , 102 , 103 व 104 है , तो ये Memory
में निम्नानुसार Store होंगे
इसे
हम निम्नानुसार भी लिख सकते हैं |
No comments