domingo, 14 de junho de 2020

Vectores e Matrizes - C++


                Vectores, Matrizes    


                   Vectores  

Um vector é 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 é um vector com 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:

                sintaxe: 

                        vector <type> variable (elements)

                                 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:
#include <iostream>
using namespace std; 
int main () {
int i, num[7];
for (i=0;i<=6;i++){
  cout << "Digite o numero: ";
  cin >> num[i];
 }
cout << num[0] << endl;
cout << num[1] << endl;
cout << num[2] << endl;
cout << num[3] << endl;
cout << num[4] << endl;
cout << num[5] << endl;
cout << num[6] << endl;
return 0;
}


                 Matrizes  

Uma matriz é uma colecção homogénea bidimensional, cujos elementos são distribuídos em linhas e colunas. Se é 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 o número da linha e número da coluna que o elemento ocupa.

ExemploUma matriz 3×4 de números inteiros.
                      int A[3][4];

Essa declaração cria uma matriz 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.
#include <iostream>
using namespace std; 
int main () {
int i,t,num[4][4];
for (i=0;i<4;i++){
for(t=0;t<4;t++){
cout << "Digite o numero: ";
cin >> num[i][t];
}
}
for (i=0;i<4;i++){
cout << endl;
for(t=0;t<4;t++){
cout << num[i][t] << " ";
}
}
   return 0;
}


              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. 

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

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

7. Crie um array para exibir o seguinte output:
     08  09  10  11
     12  13  14  15
8. 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:

0 comentários:

Enviar um comentário

Seguidores

Visitantes do blog

Pesquisar neste blogue

posts recentes

Traduzir