Você está na página 1de 16

“Comece pelo começo...

E vá até
ao fim: então pare.”.
– Lewis Carroll

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Curso de Informática
Curso de Informática e Sistemas Multimédia
TLP & SI 11ª Classe

- Arrays (Vectores)

Lição nº 52, 53 e 54
Data: 30 de Janeiro de 2023

Eng. ENELVIN SILVA


Email: enelvinsilva@gmail.com
SUMÁRIO

▪ Declaração de um Array
▪ Comprimento de um vector
▪ A instrução for aprimorada
▪ Classe Arrays e seus métodos

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Arrays
o Um array é um grupo de variáveis (chamados elementos ou componentes)
que contém valores todos do mesmo tipo. Os arrays são objetos; portanto,
são considerados tipos por referência.

o Os objetos array ocupam espaço na memória. Como outros objetos, arrays


são criados com a palavra-chave new.

o Para um objeto array, especifique o tipo dos elementos do array e o número


de elementos como parte de uma expressão de criação de array que utiliza a
palavra-chave new.

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Criação de Arrays
Arrays podem ser inicializados de
três maneiras diferentes:

1º int [ ] c = new int[12];

2º Int [ ] c; // declara a variável de array


C = new int[12]; // cria o array; atribui à variável de
array

3º Int [ ] c = {-45,6,0,72,1543,-89,0,62,-3,1,6453,78}
Construção de um array inicializando diretamente
com dados

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
https://pt.slideshare.net/Portal_do_Estudante_Java/arrays-em-
java

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Acessar Elementos no Array

Para acessar elementos no Array, é necessário identificar a posição deste


elemento no array. Isso porque, array são variáveis que recebem mais do
que um valor.

o Utilizar um número chamado de índice;


o Índice numérico:
- Atribuído a cada elemento do array
- Permite o acesso individual a seus elementos
- Iniciado com zero e progride sequencialmente até o fim do array
- Índices de um array vão de 0 até (tamanhoDoArray - 1)

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Tamanho de Array

Cada objeto array conhece seu tamanho e armazena-o em uma variável de


instância length.

O atributo length retorna o tamanho de um array, ou seja, a quantidade de


seus elementos.

A expressão c.length, por exemplo, retorna o comprimento do array c.

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Percorrer o Array
o Arrays são variáveis com um certo comprimento, ou distância. Por tanto,
podemos percorrê-los usando a instrução de repetição for. E isso faz sentido,
uma vez que precisamos repetir o acesso à mesma variável, quantas vezes
forem necessários.

o Para percorrer o array, basta saber o tamanho (distância) do array e iterar


ele usando a instrução for:

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
A instrução for aprimorada (for-each)
o A instrução for aprimorada itera pelos elementos de um array sem usar um
contador, evitando assim a possibilidade de “pisar
fora” do array.

o A sua sintaxe é:

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Exemplo for Aprimorada

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Classe Arrays

A classe Arrays ajuda a evitar reinventar a roda fornecendo métodos


static para manipulações de array comuns. Esses étodos incluem
sort para classificar um array (isto é, organizar os elementos em
ordem crescente), binarySearch para procurar um array classificado
(isto é, determinar se um array contém um valor específico e, se
contiver, onde o valor está localizado), equals para comparar arrays
e fill para inserir valores em um array.

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Classe Arrays

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Exercícios
1. Faça um programa que armazene 15 números inteiros em um array e depois permita
que o usuário digite um número inteiro para ser buscado no vetor, se for encontrado
o programa deve imprimir a posição desse número no vetor, caso contrário, deve
imprimir a mensagem: "Nao encontrado!".

2. Construa uma programa que armazene 15 números em um array e imprima uma


listagem numerada contendo o número e uma das mensagens: par ou ímpar.

3. Faça um programa que armazene 8 números em um array e imprima todos os


números. Ao final, imprima o total de números múltiplos de seis.

4. Faça um programa que armazene as notas das provas 1 e 2 de 15 alunos. Calcule e


armazene a média arredondada. Armazene também a situação do aluno: 1- Aprovado
ou 2-Reprovado. Ao final o programa deve imprimir uma listagem contendo as notas,
a média e a situação de cada aluno em formato tabulado. Utilize quantos arrays forem
necessários para armazenar os dados.
Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Exercícios
5. Construa um programa que permita armazenar o salário de 5 pessoas. Calcular e
armazenar o novo salário sabendo-se que o reajuste foi de 8%. Imprimir uma listagem
numerada com o salário e o novo salário. Declare quantos arrays forem necessários.
6. Crie um programa que leia o preço de compra e o preço de venda de 5 mercadorias
(utilize arrays). Ao final, o programa deverá imprimir quantas mercadorias
proporcionam:
▪ lucro<10%
▪ 10%<=lucro<=20%
▪ lucro>20%
7. Construa um programa que armazene o código, a quantidade, o valor de compra e o
valor de venda de 3 produtos. A listagem pode ser de todos os produtos ou somente
de um ao se digitar o código.
8. Faça um programa que leia um array “a” de 10 elementos e obtenha um array “w”
cujos componentes são os fatoriais dos respectivos componentes de “a”.

Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao
Exercícios
9. Crie um programa para gerenciar um sistema de reservas de mesas em uma casa de
espetáculo. A casa possui 5 mesas de 3 lugares cada. O programa deverá permitir que
o usuário escolha o código de uma mesa (1 a 5) e forneça a quantidade de lugares
desejados. O programa deverá informar se foi possível realizar a reserva e atualizar a
reserva. Se não for possível, o programa deverá emitir uma mensagem. O programa
deve terminar quando o usuário digitar o código 0 (zero) para uma mesa ou quando
todos os 15 lugares estiverem ocupados.
10. Construa um programa que realize as reservas de passagens áreas de uma
companhia. O programa deve permitir cadastrar o número de 10 voos e definir a
quantidade de lugares disponíveis para cada um. Após o cadastro, leia vários pedidos
de reserva, constituídos do número da carteira de identidade do cliente e do número
do voo desejado. Para cada cliente, verificar se há possibilidade no voo desejado. Em
caso afirmativo, imprimir o número da identidade do cliente e o número do voo,
atualizando o número de lugares disponíveis. Caso contrário, avisar ao cliente a
inexistência de lugares. A leitura do número 0 (zero) para o voo desejado indica o
término da leitura de reservas.
Instituto de Telecomunicações | Bairro dos CTTs, Km7 – Luanda/Angola | Tel.: 940747200 | E-mail: itel.geral@gmail.com | www.itel.gov.ao

Você também pode gostar