Arrays in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Arrays in C++ Notes | Basic Computer Engineering | RGPV BTech First Year


Arrays in C++

Programming рдореЗрдВ рдХрдИ рдмрд╛рд░ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ (Same Data Type) рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ Data рдХреЛ Store рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрджрд┐ рдкреНрд░рддреНрдпреЗрдХ Value рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ Variable рдмрдирд╛рдпрд╛ рдЬрд╛рдП рддреЛ Program рдмрдбрд╝рд╛, рдХрдард┐рди рддрдерд╛ Maintain рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди Array рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Array рдПрдХ рдРрд╕рд╛ Data Structure рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдорд╛рди Data Type рдХреА рдЕрдиреЗрдХ Values рдХреЛ рдПрдХ рд╣реА Variable Name рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдХреНрд░рдордмрджреНрдз (Sequentially) Store рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

C++ Programming рдореЗрдВ Array рдХрд╛ рдЙрдкрдпреЛрдЧ Student Marks, Employee Salary, Product Price, Sensor Data, Temperature Records, Matrix Calculation рддрдерд╛ Scientific Data Processing рдЬреИрд╕реЗ рдЕрдиреЗрдХ Applications рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Array Data рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд (Organized) рддрдерд╛ Efficient рддрд░реАрдХреЗ рд╕реЗ Store рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдорд╛рдзреНрдпрдо рд╣реИред


Introduction

Array рдПрдХ Collection рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдХреЗ Elements рд▓рдЧрд╛рддрд╛рд░ (Contiguous) Memory Locations рдореЗрдВ Store рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ Element рдХрд╛ рдЕрдкрдирд╛ рдПрдХ Unique Index Number рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рд╕реА рднреА Element рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ Access рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

C++ рдореЗрдВ Array рдХрд╛ рдкрд╣рд▓рд╛ Element Index 0 рд╕реЗ рдкреНрд░рд╛рд░рдореНрдн рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдХрд┐рд╕реА Array рдХрд╛ Size 5 рд╣реИ рддреЛ рдЙрд╕рдХреЗ Index рдХреНрд░рдорд╢рдГ 0,1,2,3,4 рд╣реЛрдВрдЧреЗред


Definition of Array

Array рд╕рдорд╛рди Data Type рдХреЗ рдЕрдиреЗрдХ Elements рдХрд╛ рдРрд╕рд╛ Collection рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рд╣реА Variable Name рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд▓рдЧрд╛рддрд╛рд░ Memory Locations рдореЗрдВ Store рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрдерд╛ рдкреНрд░рддреНрдпреЗрдХ Element рдХреЛ рдЙрд╕рдХреЗ Index Number рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Array = Collection of Same Type Data Stored in Contiguous Memory Locations

Need of Arrays

  • Multiple Values Store рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Code Duplication рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Large Data рдХреЛ Efficient рддрд░реАрдХреЗ рд╕реЗ Manage рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Searching рддрдерд╛ Sorting Algorithms рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Memory Management рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Complex Data Processing рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред

Characteristics of Arrays

  • Stores Similar Data Type Elements.
  • Contiguous Memory Allocation.
  • Index Starts from Zero.
  • Fast Random Access.
  • Fixed Size Data Structure.
  • Easy Traversal.

Advantages of Arrays

  • Simple Data Storage.
  • Fast Element Access.
  • Less Coding Required.
  • Supports Efficient Processing.
  • Easy Searching and Sorting.
  • Improves Program Performance.

Limitations of Arrays

  • Fixed Size.
  • Stores Only Same Data Type.
  • Memory May Be Wasted.
  • Insertion and Deletion are Difficult.
  • Size Cannot Change During Runtime.

Declaration of Array

Array Declare рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ Data Type рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрд╕рдХреЗ рдмрд╛рдж Array Name рддрдерд╛ Square Brackets рдореЗрдВ Array рдХрд╛ Size рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред

Syntax

data_type array_name[size];

Examples

int marks[5];
float salary[20];
char name[30];

Initialization of Array

Array Declare рдХрд░рддреЗ рд╕рдордп рдЙрд╕рдореЗрдВ рдкреНрд░рд╛рд░рдореНрднрд┐рдХ Values рднреА Store рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВред рдЗрд╕реЗ Array Initialization рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

int marks[5] = {80,75,90,88,95};
int numbers[] = {10,20,30,40,50};

рдпрджрд┐ Size рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рдП рддреЛ Compiler Automatically Elements рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ Array рдХрд╛ Size рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИред


Memory Representation

Array рдХреЗ рд╕рднреА Elements рд▓рдЧрд╛рддрд╛рд░ Memory Locations рдореЗрдВ Store рд╣реЛрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ Element рдХрд╛ Address рдкрд┐рдЫрд▓реЗ Element рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╣реЛрддрд╛ рд╣реИред рдЗрд╕реА рдХрд╛рд░рдг Array рдореЗрдВ рдХрд┐рд╕реА рднреА Element рдХреЛ Index рджреНрд╡рд╛рд░рд╛ рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ Access рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Index Value Memory Location
0 80 1000
1 75 1004
2 90 1008
3 88 1012
4 95 1016

One Dimensional Array (1D Array)

One Dimensional Array рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдХрд╛рд░ рдХрд╛ Array рд╣реИ рдЬрд┐рд╕рдореЗрдВ Elements рдХреЗрд╡рд▓ рдПрдХ Index рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣ List рдЕрдерд╡рд╛ Linear Collection рдХреЛ Represent рдХрд░рддрд╛ рд╣реИред

Syntax

int marks[5];

Example

int marks[5]={70,80,90,85,95}; cout << marks[0];

Two Dimensional Array (2D Array)

Two Dimensional Array рдПрдХ рдРрд╕рд╛ Array рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ Data Rows рдФрд░ Columns рдХреЗ рд░реВрдк рдореЗрдВ Store рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕реЗ Matrix рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ Element рдХреЛ рджреЛ Index Numbers рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Syntax

data_type array_name[rows][columns];

Example

int marks[2][3] = { {80,75,90}, {65,88,95} };

Multi-Dimensional Array

рдЬрдм Array рдореЗрдВ рджреЛ рд╕реЗ рдЕрдзрд┐рдХ Dimensions рд╣реЛрддреА рд╣реИрдВ рддрдм рдЙрд╕реЗ Multi-Dimensional Array рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ Scientific Computing, 3D Graphics рддрдерд╛ Simulation Applications рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

int data[2][3][4];

Accessing Array Elements

Array рдХреЗ рдкреНрд░рддреНрдпреЗрдХ Element рдХреЛ рдЙрд╕рдХреЗ Index Number рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ Element Index 0 рдкрд░ рддрдерд╛ рдЕрдВрддрд┐рдо Element Size-1 Index рдкрд░ рд╣реЛрддрд╛ рд╣реИред

int marks[5]={70,80,90,85,95}; cout << marks[2];

Traversing an Array

Array рдХреЗ рд╕рднреА Elements рдХреЛ рдПрдХ-рдПрдХ рдХрд░рдХреЗ Access рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ Array Traversing рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдпрддрдГ for Loop рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

for(int i=0;i<5;i++) {   cout << marks[i] << endl; }

Array Input and Output

User рд╕реЗ Array рдХреЗ рд╕рднреА Elements Input рд▓реЗрдиреЗ рддрдерд╛ рдЙрдиреНрд╣реЗрдВ Display рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Loop рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

for(int i=0;i<5;i++) {   cin >> marks[i]; } for(int i=0;i<5;i++) {   cout << marks[i] << " "; }

Searching in Array

Searching рдХрд╛ рдЕрд░реНрде Array рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ Element рдХреЛ рдЦреЛрдЬрдиреЗ рд╕реЗ рд╣реИред рдЫреЛрдЯреЗ Arrays рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдпрддрдГ Linear Search рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

int key = 90; for(int i=0;i<5;i++) {   if(marks[i]==key)   cout << "Found"; }

Common Errors

  • Accessing Invalid Index.
  • Array Index Out of Bounds.
  • Incorrect Array Size.
  • Using Different Data Types.
  • Missing Loop Condition.
  • Wrong Initialization.

Best Practices

  • Always Check Array Size.
  • Use Meaningful Variable Names.
  • Avoid Invalid Index Access.
  • Initialize Arrays Before Use.
  • Use Loops for Traversing.
  • Keep Array Size Manageable.

Applications of Arrays

  • Student Result Processing.
  • Employee Record Management.
  • Searching Algorithms.
  • Sorting Algorithms.
  • Matrix Operations.
  • Image Processing.
  • Scientific Computing.
  • Game Development.
  • Artificial Intelligence.
  • Database Processing.

Industrial Importance

Array Computer Science рдХрд╛ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг Data Structure рд╣реИред Modern Software Development, Operating Systems, Database Management Systems, Artificial Intelligence, Machine Learning, Graphics Programming, Networking рддрдерд╛ Embedded Systems рдореЗрдВ Arrays рдХрд╛ рд╡реНрдпрд╛рдкрдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓рдЧрднрдЧ рд╕рднреА Advanced Data Structures рдЬреИрд╕реЗ Stack, Queue, Heap рддрдерд╛ Matrix Representation рдХреА рдЖрдзрд╛рд░рднреВрдд рд╕рдВрд░рдЪрдирд╛ Array рд╣реА рд╣реЛрддреА рд╣реИред


Viva Questions

  1. What is an Array?
  2. Why are Arrays used?
  3. What is One Dimensional Array?
  4. What is Two Dimensional Array?
  5. What is Multi-Dimensional Array?
  6. What is Array Traversing?
  7. What is Array Index?
  8. How are Array Elements Stored in Memory?
  9. What is Linear Search?
  10. State the advantages of Arrays.

Exam Oriented Important Questions

  1. Define Array with suitable examples.
  2. Explain the characteristics of Arrays.
  3. Write the syntax and examples of 1D and 2D Arrays.
  4. Explain Memory Representation of Arrays.
  5. Describe Array Traversing with example.
  6. Explain Array Input and Output.
  7. Write a note on Searching in Arrays.
  8. Discuss the applications and industrial importance of Arrays.

Conclusion

Arrays C++ Programming рдХрд╛ рдПрдХ рдЕрддреНрдпрдВрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг Data Structure рд╣реИрдВ рдЬреЛ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреЗрдХ Data рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рд╕реЗ Store рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред One Dimensional, Two Dimensional рддрдерд╛ Multi-Dimensional Arrays рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА Real World Applications рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Array рдХреА рд╕рд╣реА рд╕рдордЭ рдЖрдЧреЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ Data Structures, Algorithms рддрдерд╛ Object Oriented Programming рдХреЛ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддреНрдпрдВрдд рдЖрд╡рд╢реНрдпрдХ рд╣реИред

Related Articles

Manipulators in C++ Notes | endl, setw, setprecision, setfill | Basic Computer Engineering | RGPV BTech First Year

0...

Read More тЖТ

Type Conversion in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Type Co...

Read More тЖТ

Assignment Operator in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Assignm...

Read More тЖТ

Copy Constructor in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Copy Co...

Read More тЖТ

this Pointer in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

this Po...

Read More тЖТ