Jump to content

[C#] Parcurgerea unui tablou


Clanin3
 Share

Recommended Posts

Salutare! În acest topic vă voi prezenta modalitatea de a parcurge un tablou în C#. Pentru început, după cum bine știti (sau nu), in C/C++ un tablou se definește astfel:

TIP_DATE nume[lungime]; //tablou unidimensional
TIP_DATE nume[lungime][lungime2]; //tablou bidimensional

În C#, definirea este puțin diferită, mai precis se face astfel:

TIP_DATE[] nume = new TIP_DATE[lungime]; //tablou unidimensional
TIP_DATE[,] nume = new TIP_DATE[lungime, lungime2]; //tablou bidimensional, lungime2 = coloana lungime = rand

Pentru a da valori unei "căsuțe" din tablou, se poate proceda precum în C/C++:

 

1. Tablou unidimensional

//tablou unidimensional:

TIP_DATE[] nume = new TIP_DATE[lungime];
nume[indice] = valoare //indice < lungime

De exemplu, definim un tablou unidimensional de tip INT de lungime 10. Initializăm căsuța cu indicele 0 cu valoarea 13. Programul va afișa valoarea dată.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] n = new int[10];
            n[0] = 13;
            Console.WriteLine(n[0]);
            Console.ReadKey();
        }
    }
}

image.png.1a4b039fd5987651ab43811bd84459

 

2. Tablou bidimensional

//tablou bidimensional

TIP_DATE[,] nume = new TIP_DATE[lungime, lungime2];
nume[indice1,indice2] = valoare; //indice1 < lungime indice2 < lungime2

De exemplu, definim un tablou bidimensional de tip INT cu 3 randuri si 2 coloane. Initializăm căsuța cu indicele 0,1 cu valoarea 1990. Programul va afișa valoarea dată.

 

image.png.1680f705b0192e5ea300902e94ae2f

 

 

Parcurgerea si citirea unui tablou se realizeaza astfel:

 

1. Tablou unidimensional:

 

TIP_DATE[] nume = new TIP_DATE[lungime];
for(int i = 0; i<lungime; i++)
{
	//initializari
}
foreach(TIP_DATE numeVar in nume)
{
	//afisari sau prelucrare numeVar
}

 

Exemplu:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] n = new int[10];
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine("n[" + i + "] = ");
                n[i] = Convert.ToInt32(Console.ReadLine());
            }
            foreach (int i in n)
            {
                Console.Write(i + " ");
            }
            Console.ReadKey();
        }
    }
}

 

image.thumb.png.a56fb3b6a1debac15ebae07f

 

2. Tablou bidimensional

 

TIP_DATE[,] nume = new TIP_DATE[lungime, lungime2];
for(int i = 0; i<lungime; i++)
{
	for(int j = 0; j<lungime2; j++)
    {
    	//initializari
    }
}
for(int i = 0; i<lungime; i++)
{
	for(int j = 0; j<lungime2; j++)
    {
    	//prelucrare sau afisare nume[i,j]
    }
}

Exemplu:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[,] n = new int[3, 2];
            for(int i = 0; i<3; i++)
            {
                for (int j = 0; j < 2; j++)
                {
                    Console.WriteLine("n[" + i + ", " + j + "] = ");
                    n[i, j] = Convert.ToInt32(Console.ReadLine());
                }
            }
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 2; j++)
                {
                    Console.Write(n[i, j] + " ");
                }
                Console.Write('\n');
            }
            Console.ReadKey();
        }
    }
}


image.thumb.png.bde28431b160db1f8d3dd032

 
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.