Capítulo 9. Vetores e Matrizes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra



Documentos relacionados
Capítulo 7. Estruturas de Decisão. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 13. Encapsulamento. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 6. Operadores. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra


Capítulo 11. Conceitos de Orientação a Objetos. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 19. Algoritmos de Ordenação e de Pesquisa. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

SOLICITAR USUÁRIO E SENHA DE ACESSO GERAÇÃO DE GUIAS PARA RECOLHIMENTO DO ISS ATRIBUIR UM CONTADOR A UMA EMPRESA

JSP - ORIENTADO A OBJETOS

Trabalho Final. Data da Submissão: das 8h do dia 16/06 às 24h do dia 17/06. Data da Entrega do Relatório: das 15h às 18h no dia 18/06.

MICROSOFT EXCEL AVANÇADO

MANUAL ITCMD - DOAÇÃO

Objetivos do Capítulo

Programação de Computadores I. Linguagem C Vetores

TÉCNICO DE TECNOLOGIA DA INFORMAÇÃO

Manual do Usuário. E-DOC Peticionamento Eletrônico TST

Capítulo 16. Pacotes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

AULA 12 CLASSES DA API JAVA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br

Programação de Computadores - I. Profª Beatriz Profº Israel

Introdução a Algoritmos Parte 04

1ª Lista de exercícios

Manual Operacional. All Commerce ECF V 2.02

Capítulo 22. Associações entre Classes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Tipos agregados. Tipos estruturados

Unidade IV: Ponteiros, Referências e Arrays

JavaServer Pages. Também são conhecidas pela sigla correspondente (JSP). Representam mais uma tecnologia da plataforma JEE.

ÍNDICE 1. SEJA BEM-VINDO... 2 SOBRE O SISTEMA FUNCIONALIDADES DO SISTEMA... 4

MC-102 Aula 17 Strings e Matrizes

SISTEMA DA NOTA FISCAL PAULISTANA

Manual de Integração Web Service

Neste artigo estudaremos os conceitos relacionados às matrizes unidimensionais (vetores) e multidimensionais.

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: Prof. Dr. Raimundo Moura

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

E&L Nota Fiscal de Serviços Eletrônica. Manual do Ambiente do Prestador de Serviços do Município

Programação de Computadores I. Ponteiros

Como proceder diante de Críticas na Redução Z?

Vetores. Vetores. Figura 1 Exemplo de vetor com 10 elementos

2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II. public double getgeracaoatual() {return geracaoatual;}

Manual de integração

Resumo da Matéria de Linguagem de Programação. Linguagem C

BOLETIM INFORMATIVO TÉCNICO LIBERAÇÃO DE ATUALIZAÇÃO - CORDILHEIRA VERSÃO 2

Sistemas Operacionais e Introdução à Programação. Vetores e matrizes

Faculdade de Ciências Universidade Agostinho Neto Departamento de Matemática e Engenharia Geográfica Ciências da Computação

Help de NFSe E&L Produções de Software LTDA. Contador

Orientação a Objetos

Programação Web com PHP. Prof. Wylliams Barbosa Santos Optativa IV Projetos de Sistemas Web

ALGORITMO I VARIÁVEIS INDEXADAS

Algoritmos e Estruturas de Dados I

UNIVERSIDADE FEDERAL DE RORAIMA PRÓ REITORIA DE PLANEJAMENTO DIRETORIA DE TECNOLOGIA DA INFORMAÇÃO COORDENAÇÃO DE SISTEMAS DE INFORMAÇÃO

MANUAL DE INSTRUÇÕES. Telefone de Suporte: (Use seu DDD Local)

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6) Curso: Informática

SECRETARIA DE ESTADO DA FAZENDA DIRETORIA DE TECNOLOGIA DE INFORMAÇÃO. Alma Web MANUAL DO USUÁRIO CONTRIBUINTE

14 - Como para gerar o boleto para pagamento do período das notas lançadas? 16 - Se no mês, o meu cliente não tiver movimento, o que devo fazer?

Módulo de Acesso Remoto

Fundação COELCE de Seguridade Social - FAELCE

Tabelas (arrays) (vetores, matrizes, etc) Algoritmos de pesquisa Algoritmos de ordenação

DEFINIÇÃO DE MÉTODOS

Passo a Passo: Reiniciar Senha do Contribuinte na Internet

Tutorial contas a pagar

CA SERVICE DESK MANAGER

RPS Recibo Provisório de Serviços Formato para envio do arquivo com os dados

Manual - Gemelo Backup Online WEB

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

SISTEMA DE NFS-e. Manual de Exportação de NFS-e Instruções e Layout. Versão: 2.1

Manual da Nota Fiscal Eletrônica

Versão 2.0. Data de criação 13/05/2015

Informática I. Aula 6. Aula 6-12/09/2007 1

Pág. 5 - GERAÇÃO DE GUIAS PARA RECOLHIMENTO DO ISS

Registros. Técnicas de Programação. Rafael Silva Guimarães

INSTRUÇÕES PARA INSCRIÇÕES EM EVENTOS DO CÂMPUS POSSE

Manual de Utilização Autorizador Web V2

Exercícios de Java Aula 19

TCEnet. Manual Técnico. Responsável Operacional das Entidades

Instruções para a atividade

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

Levantamento de Requisitos

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa

SIG DMS / NFSe. Manual de Conhecimento. Atualizado em 23/05/2013 por Danillo Campelo Amorim

Produto: Webscan Relatório III Manual de instruções. Documentos de ajuda sensitiva ao contexto integrado às várias telas do sistema

Conteúdo. Página 1 de 7

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO

MANUAL OPERACIONAL DO SISTEMA ESTADUAL DE CONTROLE DE PESCA

CGA Directa. Manual do Utilizador. Acesso, Adesão e Lista de Subscritores

Polimorfismo. Prof. Leonardo Barreto Campos 1

Revisão 04 Capítulo 08 da Apostila - Modularização

ÍNDICE. 1.1 Em Login do Administrador o usuário do sistema vai digitar seu Nome de Usuário e a senha, que foi criado anteriormente.

Cadastro Avaliação 2013 Manual de Instruções

JAVA NETBEANS PGOO Prof. Daniela Pires Conteúdo

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Manual NFSe - Prestadores e Tomadores de Serviço

Aula de Informática (disponível em Sumário

JDBC Java Database Connectivity

FBV - Linguagem de Programação II. Um pouco sobre Java

Transcrição:

Capítulo 9 Vetores e Matrizes

Objetivos do Capítulo Apresentar os dois tipos fundamentais de estruturas de dados estáticas disponíveis no Java: os vetores e as matrizes. Indicar como os vetores podem ser empregados para a construção de estruturas de dados unidimensionais. Explorar o uso de matrizes para a construção de estruturas de dados multimendionais.

Variável: armazena um dado Introdução Estrutura de dados Conjunto de dados Agrupados Sob determinada organização Estática Limite definido na criação Limite imutável Tipos Vetores Matrizes

Estruturas unidimensionais Vetores Tamanho: limite de valores Tipo: o que pode armazenar Elemento: cada dado armazenado Índice: posição de cada elemento Índices 0 1 2 3 Elementos 6.5 4.0 7.5 5.0 Índices 0 1 2 3 4 Elementos Maria José Raul Sidnei Marcos

Vetores Operações: Declaração Instanciação Inicialização Consulta

Vetores Declaração: Similar às variáveis Duas formas Sintaxe: <tipo>[] <nome>; <tipo> <nome>[]; Exemplos: int[] it; char ch[];

Vetores Instanciação: Criação do vetor Atribuição de memória Sintaxe: <nome> = new <tipo>[<posições>]; Exemplos: it = new int[4]; ch = new char[3];

Declaração e instanciação: Vetores Sintaxe: <tipo>[] <nome> = new <tipo>[<posições>]; <tipo> <nome>[] = new <tipo>[<posições>]; Exemplos: int[] it = new int[4]; char ch[] = new char[3];

Vetores Inicialização: Armazenar valores Sintaxe: <nome>[<posição>] = <valor>; Exemplos: it[0] = 5; it[1] = 8; it[2] = 3; it[3] = 9; ch[0] = A ; ch[1] = B ; ch[2] = C ;

Vetores Consulta: Recuperação de valores Sintaxe: <nome>[<posição>] Exemplos: int it2 = it[3]; int it3 = (it[0] + it[1] + it[2]) / it[3]; System.out.println( A posição 1 do vetor ch contém: + ch[1]);

Vetores Declaração, instanciação e inicialização: Sintaxe: <tipo>[] <nome> = {<valor1>,<valor2>,...,<valorn>}; <tipo> <nome>[] = {<valor1>,<valor2>,...,<valorn>}; Exemplos: int[] it = {5,8,3,9}; char ch[] = { A, B, C };

Código 9.1 Vetor.java Vetores Declaração, instanciação, inicialização e consulta a vetor de números inteiros, números decimais e de caracteres. Uso do laço for para percorrer o vetor de caracteres. 65 66 67 1.25 2.54 X Y Z

Código 9.2 Codigo.java Vetores Crie um programa que gere um código de autenticação para o usuário. Composição do código: 32 caracteres alfanuméricos. Passos: Crie um vetor de caracteres com os números e letras do alfabeto. Utilize um laço para sortear 32 destes caracteres. 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Código 9.3 Convidados.java Vetores Crie um vetor capaz de armazenar nomes de até 20 convidados. Utilize um laço for para captar e armazenar os nomes. Utilize um laço for para recuperar e exibir a lista de convidados.

Código 9.4 Amigos.java Vetores Crie um vetor capaz de armazenar nomes de amigos. O usuário poderá indicar quantos amigos deseja registrar. Este número deve ser maior que zero. O usuário poderá registrar um número menor de amigos. Utilize um laço for para captar e armazenar os nomes. Utilize um laço for para recuperar e exibir a lista de amigos.

Código 9.5 ForEach.java Vetores Crie um vetor capaz de armazenar nomes de até 10 amigos. Utilize um laço for para captar e armazenar os nomes. Utilize um laço for sem contador para recuperar e exibir a lista de amigos (laço foreach).

Estruturas multidimensionais Matrizes Duas ou mais dimensões Tamanho: limite de valores (linhas x colunas) Tipo: o que pode armazenar Elemento: cada dado armazenado Índice: posição de cada elemento (linha + coluna) Colunas 0 1 0 Maria 9988-2244 Linhas 1 José 9972-3322 2 Raul 9925-4497

Matrizes Operações: Declaração Instanciação Inicialização Consulta

Matrizes Declaração: Duas formas Sintaxe: <tipo>[][] <nome>; <tipo> <nome>[][]; Exemplos: int[][] it; char ch[][];

Matrizes Instanciação: Criação da matriz Atribuição de memória Sintaxe: <nome> = new <tipo>[<linhas>] [<colunas>]; Exemplos: it = new int[3][4]; ch = new char[2][3];

Declaração e instanciação: Matrizes Sintaxe: <tipo>[][] <nome> = new <tipo>[<linhas>] [<colunas>]; <tipo> <nome>[][] = new <tipo>[<linhas>] [<colunas>]; Exemplos: int[][] it = new int[3][4]; char ch[][] = new char[2][3];

Matrizes Inicialização: Armazenar valores Sintaxe: <nome>[<linha>] [<coluna>] = <valor>; Exemplos: ch[0][0] = A ; ch[0][1] = B ; ch[0][2] = C ; A B C ch[1][0] = D ; ch[1][1] = E ; D E F ch[1][2] = F ;

Matrizes Consulta: Recuperação de valores Sintaxe: <nome>[<linha>] [<coluna>] Exemplos: 54 35 47 92 19 74 58 42 int it2 = it[1][2] / 2; char ch2 = ch[0][1]; 75 A 66 B 81 13 C D E F

Matrizes Declaração, instanciação e inicialização: Sintaxe: <tipo>[][] <nome> = { {<vlrlin0col0>,<vlrlin0col1>,...,<vlrlin0coln>}, {<vlrlin1col0>,<vlrlin1col1>,...,<vlrlin1coln>}, {<vlrlin2col0>,<vlrlin2col1>,...,<vlrlin2coln>}, {<vlrlinncol0>,<vlrlinncol1>,...,<vlrlinncoln>}, }; Exemplos: int[][] it = {{54,35,47,92},{19,74,58,42},{75,66,81,13}}; char[][] ch = {{ A, B, C },{ D, E, F }}; 54 19 75 35 74 66 47 58 81 92 42 13 A D B E C F

Código 9.6 Matriz.java Matrizes Declaração, instanciação, inicialização e consulta a matriz de números inteiros e de caracteres. Uso do laço for para percorrer o matriz de caracteres. 0 10 A a 1 1 11 B b 2 2 12 C c 3

Código 9.7 Contatos.java Matrizes Crie uma matriz para armazenar o nome e o e-mail de contatos. O usuário poderá indicar quantos contatos deseja registrar. Este número deve ser maior que zero. O usuário poderá registrar um número menor de contatos. Utilize um laço for para captar e armazenar os dados. Utilize laços while para captar o nome e o e-mail. Se um dado informado não for válido, solicite-o novamente: Nome: de 2 a 50 caracteres E-mail: de 5 a 50 caracteres Utilize um laço for para recuperar e exibir a lista de contatos.

Código 9.8 Notas.java Matrizes Crie uma matriz para armazenar as notas de alunos. O usuário poderá indicar: Quantos alunos terão suas notas registradas. Quantas notas serão registradas para cada aluno. Utilize dois laços for aninhados para captar e armazenar as notas de cada um dos alunos. Utilize um laço while para captar cada nota. A nota deve ser um número entre 0,0 e 10,0. Se a nota for inválida, deve ser solicitada novamente. Utilize dois laços for aninhados para recuperar e exibir as notas de cada aluno e a sua média.

Matrizes Código 9.8 Notas.java

Exercício 1 Crie um novo aplicativo, chamado Exercicio0901, que gere uma senha provisória para o usuário. A senha a ser gerada deve ter 8 caracteres e todos eles devem ser dígitos numéricos. Ao final, o aplicativo deve exibir uma mensagem com a senha gerada.

Exercício 2 Crie um novo aplicativo, chamado Exercicio0902, que capte o nome de cinco pessoas e grave estes nomes em um vetor. Depois disso, este aplicativo deve sortear um dos nomes informados e, então, deve exibi-lo através de uma mensagem.

Exercício 3 Crie um novo aplicativo, chamado Exercicio0903, que capte o nome de um aluno e as suas notas e calcule a sua média final. O nome do aluno deve ter de 2 a 50 caracteres. Se o nome informado for inválido, exiba uma mensagem de erro e solicite-o novamente. Se este diálogo for cancelado, o aplicativo deve ser encerrado. Este aplicativo deve permitir que sejam registradas até 10 notas para o aluno. Cada nota deve ser um número fracionário entre 0,0 e 10,0. Todas as notas informadas devem ser somadas e o resultado deve ser dividido pelo número de notas informadas para se obter a média do aluno. Ao final, o aplicativo deve exibir uma mensagem contendo o nome do aluno, todas as suas notas e a sua média.

Exercício 3

Exercício 4 Crie um novo aplicativo, chamado Exercicio0904, que capte o nome de candidatos a um concurso qualquer e gere uma senha alfanumérica para cada um deles. O aplicativo deve permitir que você indique o número de candidatos que deseja registrar, desde que este número seja superior a zero. Armazene tanto os nomes dos candidatos registrados quanto a senha gerada para cada um deles em uma matriz contendo duas colunas e o número de linhas informadas. A senha de cada candidato deve ser gerada imediatamente após seu nome ter sido registrado e deve ter oito caracteres. Ao final, o aplicativo deve exibir uma mensagem contendo o número, o nome e a senha de cada candidato.

Exercício 4

Exercício 5 Crie um novo aplicativo, chamado Exercicio0905, que simule a emissão de um relatório simplificado de folha de pagamento. O aplicativo deve utilizar diálogos de entrada de dados para solicitar o nome e o salário de cada funcionário. O aplicativo deve permitir que você indique o número de funcionários que deseja registrar, desde que este número seja superior a zero. Se este diálogo for cancelado, o aplicativo deve ser encerrado imediatamente. Armazene os nomes dos funcionários em um vetor. Utilize uma matriz que contenha quatro colunas para armazenar os seguintes dados de cada funcionário: Salário bruto INSS Imposto de Renda Salário líquido

Exercício 5 O nome e o salário bruto devem ser informados e os descontos devem ser calculados pelo aplicativo. Se o nome ou o salário bruto não forem válidos, uma mensagem de erro deve ser exibida e o aplicativo deve solicitar novamente o dado. As regras para a validação destes dados são as seguintes: Nome: deve conter pelo menos 2 caracteres. Salário: deve ser um valor igual ou superior a R$ 465,00.

Exercício 5 O teto para recolhimento de INSS é de RS 354,07. Esse é o valor máximo que pode ser descontado do funcionário. Para cada funcionário, o aplicativo deve calcular os valores a serem descontados de seu salário a título de INSS e de Imposto de Renda. Para calcular o valor do INSS a ser descontado, utilize a tabela abaixo: Salário Alíquota Até R$ 965,67 8,0 De R$ 965,68 a R$ 1.609,45 9,0 De R$ 1.609,46 a R$ 3.218,90 11,0

Exercício 5 Para calcular o valor do Imposto de Renda, utilize a tabela abaixo. Salário Alíquota Até R$ 1.434,00 0,0 De R$ 1.434,01 a R$ 2.150,00 7,5 De R$ 2.150,01 a R$ 2.886,00 15,0 De R$ 2.886,01 a R$ 3.582,00 22,5 Acima de 3.582,00 27,5

Exercício 5 O aplicativo também deve calcular o salário líquido a ser pago a cada funcionário, que representa o valor do salário decrescido dos valores do INSS e do Imposto de Renda. Quando você cancelar um dos diálogos de entrada de dados, este aplicativo deve exibir uma mensagem contendo o resumo da folha de pagamento. Este resumo deve ter o nome e o salário bruto de cada funcionário registrado, os valores do INSS e do Imposto de Renda que serão descontados e o salário líquido a ser pago. Ao final deste resumo, devem ser indicadas algumas totalizações: A soma do valor de todos os salários brutos A soma dos descontos de INSS A soma dos descontos de Imposto de Renda A soma de todos os salários líquidos

Exercício 5

Contato Com o autor: Rui Rossi dos Santos E-mail: livros@ruirossi.pro.br Web Site: http://www.ruirossi.pro.br Com a editora: Editora NovaTerra Telefone: (21) 2218-5314 Web Site: http://www.editoranovaterra.com.br