Curso de Programação C#

William Ivanski

Exemplos Capítulo 6


1) Vetor Estático

// declaracao
int[] vetor;

// alocacao
vetor = new int[10];

// atribuicao de um unico elemento
vetor[0] = 50;
vetor[1] = 150;

// atribuicao ou leitura
for (int i = 0; i < vetor.Length; i++)
    vetor[i] = 0;

// somente leitura
foreach (int elem in vetor)
    Console.WriteLine(elem);

2) Vetor Dinâmico

// declaracao
System.Collections.Generic.List<int> vetor;

// alocacao
vetor = new System.Collections.Generic.List<int>();

// atribuicao de um unico elemento
vetor.Add(50);
vetor[0] = 150;
vetor.Add(250);
vetor[1] = 350;

// atribuicao ou leitura
for (int i = 0; i < vetor.Count; i++)
    vetor[i] = 0;

// somente leitura
foreach (int elem in vetor)
    Console.WriteLine(elem);

3) Matriz Estática

// declaracao
int[,] matriz;

// alocacao
matriz = new int[15,10];

// atribuicao de um unico elemento
matriz[0,0] = 50;
matriz[0,1] = 150;
matriz[1,0] = 250;
matriz[1,1] = 350;

// atribuicao ou leitura
for (int i = 0; i < 15; i++)
    for (int j = 0; j < 10; j++)
        matriz[i, j] = 0;

// somente leitura
foreach (int elem in matriz)
    Console.WriteLine(elem);

4) Matriz Esparsa

// declaracao
int[][] matriz;

// alocacao
matriz = new int[5][];
matriz[0] = new int[8];
matriz[1] = new int[3];
matriz[2] = new int[5];
matriz[3] = new int[20];
matriz[4] = new int[100];

// atribuicao de um unico elemento
matriz[0][0] = 50;
matriz[0][1] = 150;
matriz[1][0] = 250;
matriz[1][1] = 350;

// atribuicao ou leitura
for (int i = 0; i < matriz.Length; i++)
    for (int j = 0; j < matriz[i].Length; j++)
        matriz[i][j] = 0;

// somente leitura
foreach (int[] linha in matriz)
    foreach (int elem in linha)
        Console.WriteLine(elem);

5) Matriz Dinâmica

// declaracao
System.Collections.Generic.List<System.Collections.Generic.List<int>> matriz;

// alocacao
matriz = new System.Collections.Generic.List<System.Collections.Generic.List<int>>();
matriz.Add(new System.Collections.Generic.List<int>());
matriz.Add(new System.Collections.Generic.List<int>());
matriz.Add(new System.Collections.Generic.List<int>());
matriz.Add(new System.Collections.Generic.List<int>());
matriz.Add(new System.Collections.Generic.List<int>());

// atribuicao de um unico elemento
matriz[0].Add(50);
matriz[0][0] = 150;
matriz[0].Add(250);
matriz[0][1] = 350;
matriz[1].Add(450);
matriz[1][0] = 550;
matriz[1].Add(650);
matriz[1][1] = 750;

// atribuição ou leitura
for (int i = 0; i < matriz.Count; i++)
    for (int j = 0; j < matriz[i].Count; j++)
        matriz[i][j] = 0;

// somente leitura
foreach (System.Collections.Generic.List<int> linha in matriz)
    foreach (int elem in linha)
        Console.WriteLine(elem);