1. ANHANGUERA – 2016.2
ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO
AULA 05 – VETORES E MATRIZES
Prof. Thomás da Costa
thomascosta@aedu.com
2. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
VETORES E MATRIZES
VETORES E MATRIZES
3. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
VETORES E MATRIZES
Vetores
O que é?:
É um conjunto do mesmo tipo de variável com um tamanho definido. Um vetor
possui um indexador para identificar a posição dentro do conjunto de variáveis.
Este conjunto não pode possuir tipos diferentes.
4. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Vetores
Exemplo:
VETORES E MATRIZES
int vetor[5] = { 0, 1, 2, 3, 4 };
Tamanho de 5 posições.
Tipo do vetor.
Atribuindo valores para o vetor
nas posições correspondentes.
5. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
#include <stdio.h>
#include <locale.h>
int main()
{
setlocale(LC_ALL, "Portuguese");
int vetor[5] = { 0, 1, 2, 3, 4 };
int i;
for (i=0;i<=4;i++)
{
printf("posição: %d, valor: %dn", i, vetor[i]);
}
}
6. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
#include <stdio.h>
#include <locale.h>
int main()
{
setlocale(LC_ALL, "Portuguese");
int vetor[5];
printf("Digite um valor na posição 3 do vetor: ");
vetor[1] = 100;
scanf("%d", &vetor[2]);
printf("Valor digitado: %dn", vetor[2]);
printf("Valor na segunda posição: %d", vetor[1]);
}
7. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Vetores
Detalhes:
VETORES E MATRIZES
• Possui um índice que identifica a posição do elemento.
• O vetor sempre começa no índice 0 e terminar no índice tamanho – 1.
• Vetores armazenam uma quantidade definida de valores.
• Vetores ocupam mais espaço de memória.
• Possuem somente uma dimensão de tamanho.
• Podemos inicializar os valores, quando declaramos a variável do tipo vetor.
• Não suporta tipos diferentes dentro do mesmo vetor.
• Percorremos vetores de forma crescente, decrescente ou a partir de uma
posição.
• Podemos atribuir um valor para uma posição definida.
• Quando atribuímos um valor para uma posição maior que a quantidade
suportada do vetor, o programa pode apresentar erros de memória.
8. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Vetores
Vetor especial:
VETORES E MATRIZES
• Um vetor de char é conhecido como um tipo string.
• Normalmente o vetor do tipo char é um conjunto de caracteres.
• Representam uma palavra.
• Possui o mesmo formato dos outros vetores.
• Podemos receber uma string do teclado através do comando scanf.
9. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
#include <stdio.h>
#include <locale.h>
int main()
{
setlocale(LC_ALL, "Portuguese");
char nome[255] = "João";
char cidade[255];
printf("Olá %s !!! Qual a sua cidade de nascimento? ", nome);
fgets(cidade, sizeof(cidade), stdin);
printf("%s você nasceu em %s", nome, cidade);
}
10. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Vetores
Funções de um vetor de char:
VETORES E MATRIZES
• strlen – obtém o tamanho de uma string.
• strcat – concatena duas strings.
• strcmp – compara duas strings. Se forem iguais, retornar 0.
11. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
#include <stdio.h>
#include <locale.h>
#include <string.h>
int main()
{
setlocale(LC_ALL, "Portuguese");
char curso[] = "Sistemas da Informação";
char faculdade[] = " Anhanguera";
printf("%dn", strlen(curso));
printf("%sn", strcat(curso, faculdade));
if (strcmp(curso, faculdade) == 0)
printf("Strings iguais !!!");
else
printf("São diferentes !!!");
}
12. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Matrizes
São vetores que possuem duas ou mais dimensões para armazenar valores.
Uma matriz de duas dimensões, possui um comportamento semelhante ao de
uma tabela com linhas e colunas.
O que é?:
VETORES E MATRIZES
13. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Matrizes
Exemplo:
int valor[4][4] = {
{0, 0 ,0 ,0},
{0, 1 ,1 ,0},
{0, 1 ,1 ,0},
{0, 0 ,0 ,0}
};Declaração de uma matriz
VETORES E MATRIZES
14. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
#include <stdio.h>
int main()
{
int valor[4][4] = {
{0, 0 ,0 ,0},
{0, 1 ,1 ,0},
{0, 1 ,1 ,0},
{0, 0 ,0 ,0}
};
valor[0][2] = 22;
int i, j;
for (i=0;i<=3;i++)
{
for (j=0;j<=3;j++)
printf("%d", valor[i][j]);
printf("n");
}
}
15. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Matrizes
Podemos atribuir valores para uma posição de uma matriz utilizando
diretamente os seus índices.
Atribuição de Valor:
valor[0][2] = 22;
VETORES E MATRIZES
16. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Matrizes
• Sempre usar com sabedoria !!!
• Quanto maior o tamanho da matriz, maior a quantidade de memória
ocupada.
• A memória da matriz é de alocação estática.
• Podemos declarar qualquer tipo de matriz.
• Matrizes podem possuir várias dimensões, mas cuidado ao utilizar.
• Não se esqueça: computador tem memória limitada !!!
• Para acessar as informações de uma matriz vamos precisar sempre de dois
índices.
Detalhes:
VETORES E MATRIZES
17. ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO – Prof. Thomás da Costa
Resumo
• Vetor é conjunto de variáveis do mesmo tipo.
• Possui um índice que identifica a posição dentro do vetor.
• Começam na posição 0 e terminam na posição tamanho – 1.
• Um vetor de char é conhecido como string.
• Existem algumas operações com string: obter o tamanho, comparação e
concatenação.
• Matriz é um vetor com duas dimensões.
VETORES E MATRIZES