domingo, 28 de abril de 2019

Vectores, matrizes e Strings


                Vectores, Matrizes e Strings  


                   Vectores  
Um vetor é uma colecção de variáveis de um mesmo tipo, que compartilham o mesmo nome e que ocupam posições consecutivas de memória. Cada uma dessas variáveis denomina-se elemento e é identificada por um índice. Se v é um vetor com n posições, seus elementos são v[0], v[1], v[2], ..., v[n-1].

Um vetor para armazenar 5 números inteiros pode ser criado da seguinte maneira:
                   int v[5];

                    Inicialização de vectores   
Em C, vetores globais e estáticos são automaticamente zerados pelo compilador.
Mas, se for desejado, podemos inicializá-los explicitamente no momento em os declaramos. Nesse caso, os valores iniciais devem ser fornecidos entre chavetas e separados por vírgulas.

Exemplo: Inicialização de vector estático:
#include <stdio.h>
void main(void) {
static float moeda[5] = {1.00, 0.50, 0.25, 0.10, 0.05};
...
}
Os valores são armazenados, a partir da posição 0 do vector, na ordem em que são fornecidos; por exemplo, o valor 0.25 é armazenado em moeda[2].
Note que apenas expressões e valores constantes são permitidas numa lista de valores iniciais. O uso de variáveis causa erro de compilação.
Se a lista de valores iniciais tem mais elementos que a capacidade do vector, ocorre um erro de compilação. Entretanto, se tem menos que o necessário, as posições excedentes do vector permanecem zeradas.

Exemplo:
O exemplo a seguir permite inserir os valores do vector via teclado

                 Matrizes  

Uma matriz é uma colecção homogénea bidimensional, cujos elementos são distribuídos em linhas e colunas. Se A é uma matriz mxn, então suas linhas são indexadas de 0 a m-1 e suas colunas de 0 a n-1. Para acessar um particular elemento de A, escrevemos A[i][j], sendo i o número da linha e j número da coluna que o elemento ocupa.
Exemplo. Uma matriz 3×4 de números inteiros.
                      int A[3][4];

Essa declaração cria uma matriz A cujos elementos ocupam as seguintes posições:

  1. A[0], [0], A[0][1], A[0][2], A[0]A[3], A[0][4].
  2. A[1][0], A[1][1], A[1][2], A[1]A[3], A[1][4].
  3. A[2][0], A[2][1], A[2][2], A[2]A[3], A[2][4].
  4. A[3][0], A[3][1], A[3][2], A[3]A[3], A[3][4].

                 Inicialização de Matrizes  

Se lembrarmos que uma matriz nada mais é que um vector cujos elementos são vectores, a sintaxe para a sua inicialização não tem grandes novidades.

              Exercícios  
1.  Crie tipos de vectores para armazenar:
             a. as letras vogais do alfabeto.
             b. as temperaturas diárias de uma semana.
             c. o número de dias em cada um dos meses do ano.

2. Crie um programa que efectue a leitura de duas strings. Se elas forem iguais exibe a mensagem  “strings iguais” e caso contrário, concatene as duas strings e imprima a string resultante.

3. Crie um programa que efectue a declaração de duas strings com capacidade para 30 caracteres. Leia pela entrada padrão a primeira string. Em seguida, copie o texto da primeira string para a segunda. Mostre no final o conteúdo das duas strings

4. Leia um texto pela entrada padrão com no máximo 99 caracteres. Em seguida imprima o número de caracteres digitados. – Dica: percorra o vetor até encontrar o caracter teminador ‘\0’

5. Em uma loja de CD ́s existem apenas quatro tipos de preços que estão associados a cores. Assim os CD ́s que ficam na loja não são marcados por preços mas sim por cores.
a. Desenvolva o algoritmo que a partir da entrada da cor o software mostre o preço. A
loja está atualmente com a seguinte tabela de preços.
Côr
Preço
Verde
10MZ
Azul
20MZ
Amarelo
30MZ
Vermelho
40MZ


6. Crie um programa que efectua a soma de todos valores de um array unidimensional de qualquer tamanho e mostrar a média.

7. Ordene de forma crescente os seguintes elementos do array (1,8,3,5,7,6,4).

8. Crie um array para exibir o seguinte output:
     08  09  10  11
     12  13  14  15
9. Crie um programa que recebe um valor do tipo inteiro e faça uma busca em um array de 10 elementos. No final devera informar quantos valores foram encontrados ou informar nenhum valor foi encontrado.

Share:

Seguidores

Visitantes do blog

Pesquisar neste blogue

posts recentes

Traduzir