A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

 O que são arrays:  estruturas de dados homogêneas  coleção de elementos do mesmo tipo referenciada por um nome comum  um array pode ser imaginado.

Apresentações semelhantes


Apresentação em tema: " O que são arrays:  estruturas de dados homogêneas  coleção de elementos do mesmo tipo referenciada por um nome comum  um array pode ser imaginado."— Transcrição da apresentação:

1

2  O que são arrays:  estruturas de dados homogêneas  coleção de elementos do mesmo tipo referenciada por um nome comum  um array pode ser imaginado como uma linha em uma tabela  são usados para ordenação e busca

3  Arrays são compostos por posições contíguas na memória  Exemplo: um array de 4 elementos

4  Como declarar arrays: [ ];  Exemplo: int v[10]; float notas[4];

5 [ ];  tipo: o tipo de dado que o array armazena. Arrays só podem armazenar um único tipo  nome: qualquer identificador válido. Mesmas regras de identificadores de variáveis  número de elementos: array são estruturas estáticas, portanto o tamanho é definido na declaração

6  Os elementos são acessados por meio do nome seguido do índice do elemento  O índice do primeiro elemento é O (zero) e do último é n-1, sendo n o número de elementos  Exemplo: int a[3];  primeiro elemento : a[0]  segundo elemento: a[1]  terceiro elemento: a[2]

7  Para atribuir valor ao elemento do array: a[2] = 10; //armazena 10 no elemento de índice 2  Para usar o valor do elemento do array: soma = a[0] + a[1];

8  Acessar um array sem especificar o índice é um erro de sintaxe int a[10]; a = 99; //erro cout << a; //erro

9  Acessar um elemento “fora” do array é um erro de lógica e traz resultados inesperados em tempo de execução int a[10]; … soma = soma + a[10];

10  Com estrutura de repetição int arr[10]; int i = 0; for(i=0; i<10; i++) { arr[i] = 0; }

11  Atribuindo valor a cada elemento char vogais[5] = {‘a’, ‘b’, ‘c’, ‘d’, ‘e’}; int a[3] = { 1, 4, 9};

12  Atribuindo valor zero a todos os elementos int a[100] = {0}; //isto funciona  No entanto int a[100] = {-1}; //isto não funciona!

13  Arrays de caracteres possuem certas características próprias  A principal diferença entre este tipo e os arrays numéricos é que eles podem ser tratados como palavras ou frases  Por exemplo, é possível “ler” todos os caracteres de uma vez só

14  Declarando um array de char: char palavra[30];  Declarando e inicializando: char vogais[6]={ ‘a’, ‘b’, ‘c’, ‘d’, ‘e’}; ou char vogais[6]=“aeiou”; // isto pode na declaração

15  Arrays de char devem reservar a última posição para o terminador ‘\ 0 ’ ou caractere NULL  Isto é especialmente importante quando a “palavra” não ocupa todas as posições  Exemplo char p[30] = “teste”;  Internamente será armazenado “teste\ 0 ” sobrando 24 posições

16  Atribuição de valores a[0]=‘x’; a[1]=‘y’;  No entanto: a = “xy”; // isto é um erro a[1] = “x” // isto é um erro

17  Lendo valores  Não use cin  Para ler arrays de caracteres  gets( ) ;  não faz verificação de tamanho  Esta função faz parte de

18  Lendo valores – exemplo char a[10]; gets(a);  Lê uma palavra ou frase e coloca cada letra em uma posição do array, a partir da posição 0

19  mostrando valores – exemplo char a[10]; … puts(a); //exibe o conteúdo do array  Ou cout << a;

20  Outras funções para caracteres  tolower( ) - converte para minúsculo  toupper ( ) – converte para maiúsculo  isspace ( ) - retorna verdadeiro se o caractere for um espaço em branco  isdigit ( ) - verifica se o caractere é um número decimal

21  strcpy(, );  Exemplo char frase[50]; frase = “teste”; // isto é um erro strcpy(frase, “teste”); // copia a cadeia // “teste” no array frase

22  strcmp(, );  compara se dois arrays são iguais  Exemplo char palavra[50], outraPalavra[50]; if (frase == “teste”) // isto é um erro strcmp(palavra, outraPalavra)

23  strcmp( ) é uma função que recebe duas cadeias de caracteres e retorna:  0, se as duas cadeias forem iguais  -1, se a primeira for menor que a segunda  1, se a primeira for maior que a segunda

24  Arrays podem ter mais de uma dimensão  Arrays de duas dimensões podem ser vistos como tabelas e geralmente são chamados de matrizes  Matrizes são conjuntos de dados arranjados na forma de linhas e colunas  Para identificar um elemento na tabela é necessário indicar a linha e coluna do elemento (célula)

25

26  Declarando arrays de duas dimensões int a[3][4];  Inicializando na declaração int a[2][2] = {{ o,o}, {0,0}};

27  Inicializando com estrutura de repetição int a[3][4]; for (i=0; i < 3; i++){ for (j=0; j < 4; j++){ a[i][j] = 0; }

28  Inicializando com estrutura de repetição int a[3][4]; for (i=0; i < 3; i++){ for (j=0; j < 4; j++){ a[i][j] = 0; } } sempre é necessário referenciar a linha e coluna

29  Lendo os dados de uma matriz int a[3][4]; for (i=0; i < 3; i++){ for (j=0; j < 4; j++){ cin >> [i][j]; }

30  Mostrando os dados de uma matriz int a[3][4]; for (i=0; i < 3; i++){ for (j=0; j < 4; j++){ cout << [i][j] << “\t”; } cout << endl; //muda a linha }

31  Uma busca consiste em saber:  se um dado elemento está no array  quantas ocorrências do elemento procurado existem no array  Exemplo:  Dado um número de candidato, saber se ele está na lista dos aprovados

32  Exemplo: … bool achou = false; while (i < TAM){ if (lista[i] == elemento){ achou = true; } i++; }

33  Exemplo melhorado: … bool achou = false; while (i < TAM && !achou){ if (lista[i] == elemento){ achou = true; } i++; }


Carregar ppt " O que são arrays:  estruturas de dados homogêneas  coleção de elementos do mesmo tipo referenciada por um nome comum  um array pode ser imaginado."

Apresentações semelhantes


Anúncios Google