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

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

Estruturas Homogêneas – Vetores e Matrizes

Apresentações semelhantes


Apresentação em tema: "Estruturas Homogêneas – Vetores e Matrizes"— Transcrição da apresentação:

1 Estruturas Homogêneas – Vetores e Matrizes
Linguaguem de Programação II Aula 4 Estruturas Homogêneas – Vetores e Matrizes Strings Prof. Luiz José Hoffmann Filho

2 Vetores Vetor também é conhecido como variável composta homogênea unidimensional; Um vetor computacional é uma “variável composta” capaz de armazenar uma quantia determinada de valores; Um vetor computacional é inspirada no vetor matemático, que também é capaz de armazenar um conjunto de valores.

3 Vetores Um conjunto de variáveis do mesmo tipo, que possuem o mesmo identificador(nome) e são alocados seqüencialmente na memória; Como as variáveis tem o mesmo nome, o que as distingue é um índice que referencia sua localização dentro da estrutura.

4 Vetores Exemplo de vetor: 8 37 109 45 2 78 0 1 2 3 4 5 6 0 1 2 3 4 5 6
8 37 109 45 2 78

5 Vetores Declaração de um vetor:
<tipo> <nome da variável> [<Tamanho>] ; Onde : <Tamanho> - representa o tamanho total do vetor; < tipo > - representa qualquer um dos tipos básicos ou tipo anteriormente definido.

6 Vetores Exemplo de declaração: int vetor [15]; float valores[10];
Inicialização de vetores: int vet[10] = {1,2,3,4,5,6,7,8,9,10};

7 Vetores Atribuindo valores ao vetor:
- As atribuições em vetor exigem que seja informada em qual de suas posições o valor ficará armazenado. vetor[0] = 56; vetor[5] =100; valor[1] = 8.9; valor[4] = 0.5; valor[3] = 4.6; nomes = 'a'; nomes = “Jose Silva”; nomes = '*';

8 Vetores Preenchendo um vetor:
- Preencher um vetor significa atribuir valores a todas as suas posições. - Deve-se implementar um mecanismo que controle o valor do índice. #include <stdio.h> int main() { int vetor[5]; int i; for(i=0; i<5; i++) { printf("Digite um valor"); scanf("%d", &vetor[i]); } return 0;

9 Vetores Mostrar um elemento de um vetor, também é necessário utilizar índices: #include <stdio.h> int main() { int vetor[5]; int i; for(i=0; i<5; i++) { printf("vetor[%d] %d\n",i,vetor[i]); } return 0;

10 Trabalhando com vetores
Podemos usar os vetores como usamos qualquer outra variável para somar, subtrair e etc. #include <stdio.h> int main() { int vetor[5]; int i, soma; for(i=0; i<5; i++) { soma = soma + vetor[i]; } soma = vetor[1] + vetor[1] + vetor[2] + vetor[3] + vetor[4]; return 0;

11 Matrizes Matriz também é conhecido como variável composta homogênea multidimensional; Uma matriz computacional é uma “variável composta” capaz de armazenar uma quantia determinada de valores; Uma matriz computacional é inspirada na matriz matemático, que também é capaz de armazenar um conjunto de valores.

12 Matrizes Um conjunto de variáveis do mesmo tipo, que possuem o mesmo identificador(nome) e são alocados seqüencialmente na memória; Como as variáveis tem o mesmo nome, o que as distingue é um índice que referencia sua localização dentro da estrutura. Uma variável do tipo matriz precisa de um índice para cada uma de suas dimensões.

13 Matrizes Exemplo de Matriz: 1 2

14 Matrizes Declaração de uma matriz:
<tipo> <nome variável> [<linhas>][<colunas> ] ; Onde : <linhas> : Quantidade de linhas; <colunas> : Quantidade de colunas; <nome variável>: Nome que você dará a sua matriz- identificação; <tipo>: tipo da matriz.

15 Matrizes Exemplo de declaração: int numero[4][4];
float valores[10][10]; Inicialização: Int sqrs [4][2]= {1,1, 2,4, 3,9, 4,16}

16 Matrizes Atribuindo valores a matriz:
- As atribuições em matrizes exigem que seja informada a linha e a coluna para saber onde o valor ficará armazenado. numero[0][1] = 56; Numero[3][4] = 100; valores[1][2] = 8.9; valores[1][3] = 0.5; nomes[0][1] = 'a'; nomes[1][3] = “Jose Silva”; nomes[2][7] = '*';

17 Matrizes Preenchendo uma matriz:
- Preencher uma matriz significa atribuir valores a todas as suas posições. - Deve-se implementar um mecanismo que controle o valor do índice. #include <stdio.h> int main () { int mtrx [20][10]; int i,j,count; count=1; for (i=0;i<20;i++) { for (j=0;j<10;j++) { mtrx[i][j]=count; count++; } return(0);

18 Matrizes Mostrando um elemento de uma matriz, também é necessário utilizar índices: #include <stdio.h> int main () { int mtrx [20][10]; int i,j; for (i=0;i<20;i++) { for (j=0;j<10;j++) { printf(“mtrx[%d][%d] = %d \n”, i,j,mtrx[i][j]); } return(0);

19 Trabalhando com matrizes
Podemos usar as matrizes como usamos qualquer outra variável para somar, subtrair e etc. #include <stdio.h> int main () { int mtrx [20][10]; int i,j,count; count=0; for (i=0;i<20;i++) { for (j=0;j<10;j++) { count = count + mtrx[i][j]; } printf(“Count %d\n”, count); return(0);

20 Matriz de strings #include <stdio.h> int main () {
char strings [5][100]; int count; for (count=0;count<5;count++) { printf ("\n\nDigite uma string: "); gets (strings[count]); } printf ("\n\n\nAs strings que voce digitou foram:\n\n"); printf ("%s\n",strings[count]); return(0);

21 Strings – #include <string.h>
O uso mais comum de vetores unidimendsionais é como string de caracteres. Em C, uma string é definida como um vetor de caracteres que é terminado por um nulo “\0”. Por essa razão, é necessário declarar vetores com sendo um caractere mais longo que a maior string que elas devem guarda.

22 Strings Por exemplo, para declarar um vetor str que guarda uma string de 10 caracteres, char str[11]; Isso reserva espaço para o nulo no final da string. Em C se faz necessário o uso de algumas funções de manipulação de strings. Inicialização: char str[14] = “Eu gosto de C”;

23 String - strcpy strcpy (string_destino, string_origem);
A função strcpy() copia a string-origem para a string- destino. Seu funcionamento é semelhante ao da rotina apresentada na seção anterior. As funções apresentadas nestas seções estão no arquivo cabeçalho string.h. A seguir apresentamos um exemplo de uso da função strcpy(): #include <stdio.h> #include <string.h> int main () { char str1[100],str2[100],str3[100]; printf ("Entre com uma string: "); gets (str1); strcpy (str2,str1); /* Copia str1 em str2 */ strcpy (str3,"Voce digitou a string "); printf ("\n\n%s%s",str3,str2); return(0); }

24 String - strcat strcat (string_destino,string_origem);
A string de origem permanecerá inalterada e será anexada ao fim da string de destino. Um exemplo: #include <stdio.h> #include <string.h> int main () { char str1[100],str2[100]; printf ("Entre com uma string: "); gets (str1); strcpy (str2,"Voce digitou a string "); strcat (str2,str1); /* str2 armazenara' Voce digitou a string + o conteudo de str1 */ printf ("\n\n%s",str2); return 0; }

25 String - strlen strlen (string);
A função strlen() retorna o comprimento da string fornecida. O terminador nulo não é contado. Isto quer dizer que, de fato, o comprimento do vetor da string deve ser um a mais que o inteiro retornado por strlen(). Um exemplo do seu uso: #include <stdio.h> #include <string.h> int main () { int size; char str[100]; printf ("Entre com uma string: "); gets (str); size=strlen (str); printf ("\n\nA string que voce digitou tem tamanho %d",size); return(0); }

26 String - strcmp strcmp (string1,string2);
A função strcmp() compara a string 1 com a string 2. Se as duas forem idênticas a função retorna zero. Se elas forem diferentes a função retorna não-zero. Um exemplo da sua utilização: #include <stdio.h> #include <string.h> int main () { char str1[100],str2[100]; printf ("Entre com uma string: "); gets (str1); printf ("\n\nEntre com outra string: "); gets (str2); if (strcmp(str1,str2)) printf ("\n\nAs duas strings são diferentes."); else printf ("\n\nAs duas strings são iguais."); return 0; }

27 String - strcat A função strcat() tem a seguinte forma geral:
strcat (string_destino,string_origem); A string de origem permanecerá inalterada e será anexada ao fim da string de destino. Um exemplo: #include <stdio.h> #include <string.h> int main () { char str1[100],str2[100]; printf ("Entre com uma string: "); gets (str1); strcpy (str2,"Voce digitou a string "); strcat (str2,str1); /* str2 armazenara' Voce digitou a string + o conteudo de str1 */ printf ("\n\n%s",str2); return 0; }

28 String – strchr e strstr
A função strchr(s1, ch), retorna um ponteiro para a primeira ocorrência de ch, s1. A função strstr(s1, s2), retorna um ponteiro para a primeira ocorrência de s2 em s1.

29 Matrizes de string. Em uma matriz de string, teremos as linhas que seram a quantidade de string armazenada e as colunas que seram o tamanho das string que devem ser armazenadas. Exemplo : char str_array[30][80]. Para acessar basta especificar o número da linha Exemplo: gets(str_array[2]);

30 Exercícios - Vetores Faça um programa para ler 15 idades diferentes e guarde em um vetor. Depois calcular e mostrar a média das idades. Faça um programa para ler 10 números e guardar em um vetor. Depois calcular e mostrar qual número é par e qual seu índice no vetor. Faça um programa que preencha dois vetores de dez elementos inteiros cada e mostre um terceiro vetor resultante da intercalação deles.

31 Exercícios - Matrizes Faça um programa que preencha uma matriz 10x10 com números inteiros e depois multiplique cada elemento da matriz por 2 e guarde em uma nova matriz e depois mostre o resultado. Faça um programa para ler 4 notas de 3 alunos e guarde os valores em uma matriz. Depois calcular e mostrar a média das notas de cada aluno.

32 Exercícios - Strings Faça um programa que lê uma string de 5 caracteres e o escreve invertido. Faça um programa que lê uma string de 4 caracteres e inverte a primeira letra da string com a última. O programa deve escrever a string original e a alterada. Faça uma programa que lê o nome é o sobrenome de uma pessoa separadamente. O programa deve juntar as duas strings em uma só e escrever na tela: a nova string, o seu númeor de caracteres, a sua primeira e a última letra. Faça uma função que receba 2 strings (A e B) e retorne uma terceira string (C) formada pelos caracteres de A e B intercalados. Ex.: Se A='Quarta' e B='Segunda', a resposta deve ser 'QSueagrutnada'. Faça um programa que leia 4 palavras pelo teclado, e armazene cada palavra em uma string. Depois, concatene todas as strings lidas numa única string. Por fim apresente esta como resultado ao final do programa.


Carregar ppt "Estruturas Homogêneas – Vetores e Matrizes"

Apresentações semelhantes


Anúncios Google