·
Sistemas de Informação ·
Linguagens de Programação
Send your question to AI and receive an answer instantly
Recommended for you
42
Introdução aos Arrays Unidimensionais em Java
Linguagens de Programação
ESPM
20
Introdução aos Arrays Bidimensionais em Programação
Linguagens de Programação
ESPM
19
Introdução à Linguagem R - Histórico, Interfaces e Instalação
Linguagens de Programação
ESPM
8
Métodos de Manipulação de Strings - Exercícios de Programação em Java
Linguagens de Programação
ESPM
20
Introdução às Janelas Gráficas em Java com JOptionPane
Linguagens de Programação
ESPM
18
Exercícios Práticos em R Markdown: Análise de Dados e Visualização
Linguagens de Programação
ESPM
2
Base R Cheat Sheet
Linguagens de Programação
ESPM
37
Introdução à Codificação de Métodos em Java
Linguagens de Programação
ESPM
14
Atividade de Revisao - Criacao e Manipulacao de Dataframe com Tidyverse em R
Linguagens de Programação
ESPM
29
Tipos Abstratos de Dados e Tipos de Dados em Programação
Linguagens de Programação
ESPM
Preview text
Sistemas de Informação Laboratório de Programação Prof Dr Antonio Marcos SELMINI antonioselminiespmbr Array Unidimensional vetor Sistemas de Informação Introdução import javautilScanner public class Exemplo public static void mainString args int n1 n2 n3 n4 n5 int n6 n7 n8 n9 n10 soma Scanner entrada new ScannerSystemin SystemoutprintlnDigite o primeiro valor n1 entradanextInt SystemoutprintlnDigite o segundo valor n2 entradanextInt repete todo o processo para as outras variáveis soma n1n2n3n4n5n6n7n8n9n10 SystemoutprintlnSoma dos números soma declaração de 10 variáveis para entrada de dados muita repetição de código inviável para uma quantidade grande de variáveis Considere o seguinte problema escrever um programa em Java para ler e armazenar 10 números inteiros O seu programa deverá calcular e imprimir a soma dos números no vídeo Sistemas de Informação Introdução Considere a seguinte situação prática Qual o total de variáveis para resolver o problema descrito Para quem pensou em 150 variáveis acertou Declarar 150 variáveis parece algo muito complicado e também nada prático Um professor tem um total de 50 alunos O professor gostaria de armazenar para processamento as duas notas referentes às provas aplicadas e também calcular e armazenar a média de cada aluno Sistemas de Informação Introdução Qual a solução para esse problema Array Unidimensional Vetor Sistemas de Informação Array unidimensional vetor Um array unidimensional ou vetor é definido formalmente como um conjunto de variáveis ou seja um conjunto de posições de memória contínuas que são referenciadas pelo mesmo nome Definição Os elementos armazenados em um vetor são do mesmo tipo de dado estrutura homogêneae são referenciados pelo mesmo nome Sintaxe completa para declaração de um vetor tipo nomearray new tipotamanho ou tipo nomearray new tipotamanho tamanho valor inteiro e positivo Sistemas de Informação Array unidimensional vetor int numero new int10 ou int numero new int10 double nota new double50 ou double nota new double50 String nome new String50 ou String nome new String50 Exemplos de declaração completa Sistemas de Informação Array unidimensional vetor tipo nomearray ou tipo nomearray A declaração de um vetor pode ser feita em duas etapas declaração e instanciação Sintaxe para declaração int x ou int x Exemplo de declaração Sistemas de Informação Array unidimensional vetor nomearray new tipotamanho Depois de declarar um vetor é necessário instanciálo A instanciação é o processo pelo qual um endereço de memória é alocado para um objeto A sintaxe para a declaração de um vetor é Exemplo de instanciação x new int40 obrigatório definir o tamanho do array não usa colchetes Muito cuidado com essa linha de código int x new int Não compila falta o tamanho do array Sistemas de Informação Array unidimensional vetor A partir do momento que um vetor foi definido como podemos acessar os seus elementos Como podemos adicionar novos elementos a um vetor Um elemento individual dentro de um vetor é acessado pelo uso de um índice ou subscrito Um índice descreve a posição de um elemento dentro do vetor Em Java o índice do primeiro elemento é o número zero Os índices são valores inteiros e positivos sequenciais Sistemas de Informação Array unidimensional vetor int x new int10 Como exemplo considere a seguinte declaração de um vetor Conceitualmente podemos imaginar o vetor da seguinte forma 10 5 2 1 0 25 55 3 100 7 0 1 2 3 4 5 6 7 8 9 valores armazenados no vetor índice dos elementos armazenados no vetor Sistemas de Informação Array unidimensional vetor Exemplo double dados new double10 dados dadoslength variável de referência armazena o endereço de memória Observação length não é um método comando length é uma propriedade de todo objeto array length determina o tamanho do array A variável dados é uma referência a um array de números double Os arrays têm comprimento fixo e não podem ser alterados Os arrays têm elementos de um tipo específico Sistemas de Informação Array unidimensional vetor int teste new int4 teste 0 0 0 0 0 1 2 3 variável de referência do array int objeto array int valores índices int teste teste new int4 mesmo efeito Sistemas de Informação Manipulando um array unidimensional Considere a seguinte declaração int vetor new int6 Dessa forma temos vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Armazenar o valor 15 na primeira posição do vetor vetor0 15 a primeira posição do vetor tem índice 0 e não 1 15 vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Sistemas de Informação Manipulando um array unidimensional Armazenar na quarta posição do vetor a diferença entre o valor da última posição e da primeira vetor3 vetor5 vetor0 a quarta posição tem índice 3 vetor3 vetorvetorlength1 vetor0 tem o mesmo efeito da linha anterior 15 30 45 vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Armazenar na última posição do vetor o triplo do valor da primeira posição vetor5 vetor03 a última posição tem índice 5 vetorvetorlength1 vetor03 tem o mesmo efeito da linha anterior 15 45 vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Sistemas de Informação Manipulando um array unidimensional Como armazenar um valor em um array nomedoarrayindice valor int vetor new int7 índice 0 1 2 3 4 5 6 vetor 99 110 vetor1 18 erro o índice 1 não existe vetor7 100 erro o índice 7 não existe vetor4 99 não é a posição 4 e sim a posição de índice 4 5ª posição vetor6 110 posição de índice 6 7ª posição Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 0 0 0 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 7 0 0 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 7 0 5 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 7 0 5 0 0 1 2 3 4 5 6 7 x 3 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 2 7 0 5 0 0 1 2 3 4 5 6 7 x 3 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 2 7 0 5 9 0 1 2 3 4 5 6 7 x 3 Sistemas de Informação Manipulando um array unidimensional Qual o tamanho de um array meuArraylength Pontos importantes Qual o índice do último elemento do vetor em termos do seu tamanho length Sistemas de Informação Manipulando um array unidimensional Qual o tamanho de um array meuArraylength Pontos importantes Qual o índice do último elemento do vetor em termos do seu tamanho length meuArraylength 1 Qual o índice do último elemento do vetor em termos do seu tamanho length Sistemas de Informação Arrays laços de repetição int numbers new int8 forint i 0 i numberslength i numbersi 2 i índice 0 1 2 3 4 5 6 7 valor 0 2 4 6 8 10 12 14 Sistemas de Informação Inicialização de arrays int primos new int5 primos0 2 primos1 3 primos2 5 primos3 7 primos4 11 Declara e depois inicializa Inicialização no momento da declaração int primos 2 3 5 7 11 O tamanho do vetor será igual a quantidade de elementos informada Sistemas de Informação Exemplo 1 public class Exemplo public static void mainString args int vetor new int10 int i armazena os valores no vetor fori 0 i 10 i vetori i imprime os valores do vetor fori 0 i vetorlength i Systemoutprintlnvetori Programa em Java para armazenar o nome de 5 alunos Sistemas de Informação Exemplo 2 Programa em Java para preencher e imprimir um vetor import javautilScanner public class Exemplo public static void mainString args String nomes new String5 int i Scanner entrada new ScannerSystemin ler os nomes via teclado fori 0 i nomeslength i SystemoutprintlnDigite o nome nomesi entradanextLine Sistemas de Informação Exercício 1 Escreva um programa em Java que preencha um vetor de 1000 posições com valores fornecidos pelo usuário Imprima no vídeo o maior e o menor valor armazenado 2 Escreva um programa em Java que preencha um vetor de 1000 posições com valores fornecidos pelo usuário Imprima no vídeo a quantidade de números pares e ímpares digitados 3 Escreva um programa em Java para preencher um vetor de 1000 posições com valores fornecidos pelo usuário Imprima no vídeo apenas os números primos armazenados no vetor Um número é primo quando ele tem apenas 2 divisores 1 e ele mesmo Sistemas de Informação Exercício 4 Escreva um programa que leia a temperatura máxima diária da última semana de domingo a sábado Imprima no vídeo os dias em que a temperatura esteve acima da média da semana 5 Para o exercício anterior imprima no vídeo um histograma da variação da temperatura durante a semana Deverá ser impresso no vídeo uma linha com uma quantidade de caracteres de tamanho proporcional à temperatura Domingo 2ª feira Sistemas de Informação Exercício Total de alunos Médias Porcentagem 5 50 50 70 80 100 40000 7 100 95 90 80 70 60 50 57143 3 70 90 80 33333 3 70 90 81 66667 9 100 99 98 97 96 95 94 93 91 55556 6 Algumas universidades estão adotando o critério de atribuir notas aos alunos como um número inteiro entre 0 e 100 Você deverá escrever um programa em Java para calcular a porcentagem de alunos que estão acima da média da sala O programa deverá funcionar da seguinte maneira 1 o número de salas de aulas deverá ser informado 2 para cada sala de aula deverá ser informado o número de alunos e na sequência a média final de cada aluno da sala O programa deverá calcular e imprimir no vídeo a porcentagem de alunos que estão acima da média da sala na impressão da porcentagem deverá ter 3 casas decimais e também o símbolo de porcentagem Veja na tabela abaixo alguns valores para você testar o seu programa considerando 5 salas de aula Sistemas de Informação Geração de números aleatórios Um número aleatório é um número que pertence a uma série numérica e não pode ser previsto a partir dos membros anteriores da série O conceito de número aleatório é um conceito relativo à série numérica a que o número pertence Números verdadeiramente aleatórios são muito difíceis de obter por isso devemos nos contentar com números pseudo aleatórios gerados por algoritmos Sistemas de Informação Geração de números aleatórios Os números aleatórios são utilizados de diversas formas em programas de computador Eles são importantes no desenvolvimento de jogos na área de segurança de informações exemplo para gerar senhas ou textos e em programas de mineração de dados e análise estatística apenas para citar alguns exemplos A linguagem Java disponibiliza funcionalidades para a geração de números aleatórios em uma classe denominada Random do pacote javautil Sistemas de Informação Geração de números aleatórios Random nomedavariavel new Random Inicialmente definese uma variável do tipo Random usando a seguinte sintaxe Após a definição da variável do tipo Random métodos são utilizados para a geração de valores Os principais métodos são nextInt gera números inteiros positivos ou negativos dentro da faixa de valores inteiros do Java nextIntn gera um número inteiro entre 0 e n1 nextDouble gera números entre 0 e 1 nextFloat gera números entre 0 e 1 Sistemas de Informação Geração de números aleatórios exemplo 1 import javautilRandom public class Aleatorio public static void mainString args definição da variável Random Random gerador new Random imprime sequência de 10 números inteiros aleatórios for int i 0 i 10 i SystemoutprintlngeradornextInt Sistemas de Informação Geração de números aleatórios exemplo 2 import javautilRandom public class Aleatorio public static void mainString args definição da variável Random Random gerador new Random imprime sequência de 10 números inteiros aleatórios entre 0 e 25 for int i 0 i 10 i SystemoutprintlngeradornextInt26 Sistemas de Informação Geração de números aleatórios exemplo 3 import javautilRandom public class Aleatorio public static void mainString args definição da variável Random Random r new Random SystemoutprintlnrnextDouble SystemoutprintlnrnextFloat Sistemas de Informação Geração de números aleatórios observações Suponha que você precise gerar um número aleatório entre 1 e 6 Se você simplesmente usar o método nextInt6 obterá números entre 0 e 5 algo que você não deseja Resolver a situação é simples bastando aplicar o seguinte recurso int valor geradornextInt6 1 Imagine que você precise gerar um número real qualquer entre 0 e 90 por exemplo Os métodos nextDouble e nextFloat retornam sempre números entre 0 e 1 Então como podemos resolver a situação A resposta é simples basta multiplicar o número gerado por 90 double valor geradornextDouble 90 Sistemas de Informação Exercício 7 Escreva um programa em Java que preencha um vetor de 10 posições com números aleatórios inteiros não duplicados Sistemas de Informação Bibliografia XAVIER Gley F C Lógica de Programação 12ª ed Editora Senac São Paulo 2011 Introdução e Capítulo 3 SOUZA M A F SOARES M V GOMES M M CONCILIO R Algoritmos e Lógica de Programação 1ª e 2ª ed São Paulo Cengage Learning 2011 Capítulo 4 páginas 125 130 41 Sistemas de Informação Bibliografia PUGA S RISSETTI G Lógica de programação e estruturas de dados 2ª ed São Paulo Editora Pearson 2009 Capítulo 5 DEITEL H DEITEL P Java Como Programar 8ª ed Editora Pearson 2010 Capítulo 3 42
Send your question to AI and receive an answer instantly
Recommended for you
42
Introdução aos Arrays Unidimensionais em Java
Linguagens de Programação
ESPM
20
Introdução aos Arrays Bidimensionais em Programação
Linguagens de Programação
ESPM
19
Introdução à Linguagem R - Histórico, Interfaces e Instalação
Linguagens de Programação
ESPM
8
Métodos de Manipulação de Strings - Exercícios de Programação em Java
Linguagens de Programação
ESPM
20
Introdução às Janelas Gráficas em Java com JOptionPane
Linguagens de Programação
ESPM
18
Exercícios Práticos em R Markdown: Análise de Dados e Visualização
Linguagens de Programação
ESPM
2
Base R Cheat Sheet
Linguagens de Programação
ESPM
37
Introdução à Codificação de Métodos em Java
Linguagens de Programação
ESPM
14
Atividade de Revisao - Criacao e Manipulacao de Dataframe com Tidyverse em R
Linguagens de Programação
ESPM
29
Tipos Abstratos de Dados e Tipos de Dados em Programação
Linguagens de Programação
ESPM
Preview text
Sistemas de Informação Laboratório de Programação Prof Dr Antonio Marcos SELMINI antonioselminiespmbr Array Unidimensional vetor Sistemas de Informação Introdução import javautilScanner public class Exemplo public static void mainString args int n1 n2 n3 n4 n5 int n6 n7 n8 n9 n10 soma Scanner entrada new ScannerSystemin SystemoutprintlnDigite o primeiro valor n1 entradanextInt SystemoutprintlnDigite o segundo valor n2 entradanextInt repete todo o processo para as outras variáveis soma n1n2n3n4n5n6n7n8n9n10 SystemoutprintlnSoma dos números soma declaração de 10 variáveis para entrada de dados muita repetição de código inviável para uma quantidade grande de variáveis Considere o seguinte problema escrever um programa em Java para ler e armazenar 10 números inteiros O seu programa deverá calcular e imprimir a soma dos números no vídeo Sistemas de Informação Introdução Considere a seguinte situação prática Qual o total de variáveis para resolver o problema descrito Para quem pensou em 150 variáveis acertou Declarar 150 variáveis parece algo muito complicado e também nada prático Um professor tem um total de 50 alunos O professor gostaria de armazenar para processamento as duas notas referentes às provas aplicadas e também calcular e armazenar a média de cada aluno Sistemas de Informação Introdução Qual a solução para esse problema Array Unidimensional Vetor Sistemas de Informação Array unidimensional vetor Um array unidimensional ou vetor é definido formalmente como um conjunto de variáveis ou seja um conjunto de posições de memória contínuas que são referenciadas pelo mesmo nome Definição Os elementos armazenados em um vetor são do mesmo tipo de dado estrutura homogêneae são referenciados pelo mesmo nome Sintaxe completa para declaração de um vetor tipo nomearray new tipotamanho ou tipo nomearray new tipotamanho tamanho valor inteiro e positivo Sistemas de Informação Array unidimensional vetor int numero new int10 ou int numero new int10 double nota new double50 ou double nota new double50 String nome new String50 ou String nome new String50 Exemplos de declaração completa Sistemas de Informação Array unidimensional vetor tipo nomearray ou tipo nomearray A declaração de um vetor pode ser feita em duas etapas declaração e instanciação Sintaxe para declaração int x ou int x Exemplo de declaração Sistemas de Informação Array unidimensional vetor nomearray new tipotamanho Depois de declarar um vetor é necessário instanciálo A instanciação é o processo pelo qual um endereço de memória é alocado para um objeto A sintaxe para a declaração de um vetor é Exemplo de instanciação x new int40 obrigatório definir o tamanho do array não usa colchetes Muito cuidado com essa linha de código int x new int Não compila falta o tamanho do array Sistemas de Informação Array unidimensional vetor A partir do momento que um vetor foi definido como podemos acessar os seus elementos Como podemos adicionar novos elementos a um vetor Um elemento individual dentro de um vetor é acessado pelo uso de um índice ou subscrito Um índice descreve a posição de um elemento dentro do vetor Em Java o índice do primeiro elemento é o número zero Os índices são valores inteiros e positivos sequenciais Sistemas de Informação Array unidimensional vetor int x new int10 Como exemplo considere a seguinte declaração de um vetor Conceitualmente podemos imaginar o vetor da seguinte forma 10 5 2 1 0 25 55 3 100 7 0 1 2 3 4 5 6 7 8 9 valores armazenados no vetor índice dos elementos armazenados no vetor Sistemas de Informação Array unidimensional vetor Exemplo double dados new double10 dados dadoslength variável de referência armazena o endereço de memória Observação length não é um método comando length é uma propriedade de todo objeto array length determina o tamanho do array A variável dados é uma referência a um array de números double Os arrays têm comprimento fixo e não podem ser alterados Os arrays têm elementos de um tipo específico Sistemas de Informação Array unidimensional vetor int teste new int4 teste 0 0 0 0 0 1 2 3 variável de referência do array int objeto array int valores índices int teste teste new int4 mesmo efeito Sistemas de Informação Manipulando um array unidimensional Considere a seguinte declaração int vetor new int6 Dessa forma temos vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Armazenar o valor 15 na primeira posição do vetor vetor0 15 a primeira posição do vetor tem índice 0 e não 1 15 vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Sistemas de Informação Manipulando um array unidimensional Armazenar na quarta posição do vetor a diferença entre o valor da última posição e da primeira vetor3 vetor5 vetor0 a quarta posição tem índice 3 vetor3 vetorvetorlength1 vetor0 tem o mesmo efeito da linha anterior 15 30 45 vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Armazenar na última posição do vetor o triplo do valor da primeira posição vetor5 vetor03 a última posição tem índice 5 vetorvetorlength1 vetor03 tem o mesmo efeito da linha anterior 15 45 vetor0 vetor1 vetor2 vetor3 vetor4 vetor5 Sistemas de Informação Manipulando um array unidimensional Como armazenar um valor em um array nomedoarrayindice valor int vetor new int7 índice 0 1 2 3 4 5 6 vetor 99 110 vetor1 18 erro o índice 1 não existe vetor7 100 erro o índice 7 não existe vetor4 99 não é a posição 4 e sim a posição de índice 4 5ª posição vetor6 110 posição de índice 6 7ª posição Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 0 0 0 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 7 0 0 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 7 0 5 0 0 1 2 3 4 5 6 7 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 0 7 0 5 0 0 1 2 3 4 5 6 7 x 3 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 2 7 0 5 0 0 1 2 3 4 5 6 7 x 3 Sistemas de Informação Manipulando um array unidimensional Qual o conteúdo do array após a execução do código abaixo int numbers new int8 numbers1 3 numbers4 7 numbers6 5 int x numbers1 numbersx 2 numbersnumbers4 9 0 3 0 2 7 0 5 9 0 1 2 3 4 5 6 7 x 3 Sistemas de Informação Manipulando um array unidimensional Qual o tamanho de um array meuArraylength Pontos importantes Qual o índice do último elemento do vetor em termos do seu tamanho length Sistemas de Informação Manipulando um array unidimensional Qual o tamanho de um array meuArraylength Pontos importantes Qual o índice do último elemento do vetor em termos do seu tamanho length meuArraylength 1 Qual o índice do último elemento do vetor em termos do seu tamanho length Sistemas de Informação Arrays laços de repetição int numbers new int8 forint i 0 i numberslength i numbersi 2 i índice 0 1 2 3 4 5 6 7 valor 0 2 4 6 8 10 12 14 Sistemas de Informação Inicialização de arrays int primos new int5 primos0 2 primos1 3 primos2 5 primos3 7 primos4 11 Declara e depois inicializa Inicialização no momento da declaração int primos 2 3 5 7 11 O tamanho do vetor será igual a quantidade de elementos informada Sistemas de Informação Exemplo 1 public class Exemplo public static void mainString args int vetor new int10 int i armazena os valores no vetor fori 0 i 10 i vetori i imprime os valores do vetor fori 0 i vetorlength i Systemoutprintlnvetori Programa em Java para armazenar o nome de 5 alunos Sistemas de Informação Exemplo 2 Programa em Java para preencher e imprimir um vetor import javautilScanner public class Exemplo public static void mainString args String nomes new String5 int i Scanner entrada new ScannerSystemin ler os nomes via teclado fori 0 i nomeslength i SystemoutprintlnDigite o nome nomesi entradanextLine Sistemas de Informação Exercício 1 Escreva um programa em Java que preencha um vetor de 1000 posições com valores fornecidos pelo usuário Imprima no vídeo o maior e o menor valor armazenado 2 Escreva um programa em Java que preencha um vetor de 1000 posições com valores fornecidos pelo usuário Imprima no vídeo a quantidade de números pares e ímpares digitados 3 Escreva um programa em Java para preencher um vetor de 1000 posições com valores fornecidos pelo usuário Imprima no vídeo apenas os números primos armazenados no vetor Um número é primo quando ele tem apenas 2 divisores 1 e ele mesmo Sistemas de Informação Exercício 4 Escreva um programa que leia a temperatura máxima diária da última semana de domingo a sábado Imprima no vídeo os dias em que a temperatura esteve acima da média da semana 5 Para o exercício anterior imprima no vídeo um histograma da variação da temperatura durante a semana Deverá ser impresso no vídeo uma linha com uma quantidade de caracteres de tamanho proporcional à temperatura Domingo 2ª feira Sistemas de Informação Exercício Total de alunos Médias Porcentagem 5 50 50 70 80 100 40000 7 100 95 90 80 70 60 50 57143 3 70 90 80 33333 3 70 90 81 66667 9 100 99 98 97 96 95 94 93 91 55556 6 Algumas universidades estão adotando o critério de atribuir notas aos alunos como um número inteiro entre 0 e 100 Você deverá escrever um programa em Java para calcular a porcentagem de alunos que estão acima da média da sala O programa deverá funcionar da seguinte maneira 1 o número de salas de aulas deverá ser informado 2 para cada sala de aula deverá ser informado o número de alunos e na sequência a média final de cada aluno da sala O programa deverá calcular e imprimir no vídeo a porcentagem de alunos que estão acima da média da sala na impressão da porcentagem deverá ter 3 casas decimais e também o símbolo de porcentagem Veja na tabela abaixo alguns valores para você testar o seu programa considerando 5 salas de aula Sistemas de Informação Geração de números aleatórios Um número aleatório é um número que pertence a uma série numérica e não pode ser previsto a partir dos membros anteriores da série O conceito de número aleatório é um conceito relativo à série numérica a que o número pertence Números verdadeiramente aleatórios são muito difíceis de obter por isso devemos nos contentar com números pseudo aleatórios gerados por algoritmos Sistemas de Informação Geração de números aleatórios Os números aleatórios são utilizados de diversas formas em programas de computador Eles são importantes no desenvolvimento de jogos na área de segurança de informações exemplo para gerar senhas ou textos e em programas de mineração de dados e análise estatística apenas para citar alguns exemplos A linguagem Java disponibiliza funcionalidades para a geração de números aleatórios em uma classe denominada Random do pacote javautil Sistemas de Informação Geração de números aleatórios Random nomedavariavel new Random Inicialmente definese uma variável do tipo Random usando a seguinte sintaxe Após a definição da variável do tipo Random métodos são utilizados para a geração de valores Os principais métodos são nextInt gera números inteiros positivos ou negativos dentro da faixa de valores inteiros do Java nextIntn gera um número inteiro entre 0 e n1 nextDouble gera números entre 0 e 1 nextFloat gera números entre 0 e 1 Sistemas de Informação Geração de números aleatórios exemplo 1 import javautilRandom public class Aleatorio public static void mainString args definição da variável Random Random gerador new Random imprime sequência de 10 números inteiros aleatórios for int i 0 i 10 i SystemoutprintlngeradornextInt Sistemas de Informação Geração de números aleatórios exemplo 2 import javautilRandom public class Aleatorio public static void mainString args definição da variável Random Random gerador new Random imprime sequência de 10 números inteiros aleatórios entre 0 e 25 for int i 0 i 10 i SystemoutprintlngeradornextInt26 Sistemas de Informação Geração de números aleatórios exemplo 3 import javautilRandom public class Aleatorio public static void mainString args definição da variável Random Random r new Random SystemoutprintlnrnextDouble SystemoutprintlnrnextFloat Sistemas de Informação Geração de números aleatórios observações Suponha que você precise gerar um número aleatório entre 1 e 6 Se você simplesmente usar o método nextInt6 obterá números entre 0 e 5 algo que você não deseja Resolver a situação é simples bastando aplicar o seguinte recurso int valor geradornextInt6 1 Imagine que você precise gerar um número real qualquer entre 0 e 90 por exemplo Os métodos nextDouble e nextFloat retornam sempre números entre 0 e 1 Então como podemos resolver a situação A resposta é simples basta multiplicar o número gerado por 90 double valor geradornextDouble 90 Sistemas de Informação Exercício 7 Escreva um programa em Java que preencha um vetor de 10 posições com números aleatórios inteiros não duplicados Sistemas de Informação Bibliografia XAVIER Gley F C Lógica de Programação 12ª ed Editora Senac São Paulo 2011 Introdução e Capítulo 3 SOUZA M A F SOARES M V GOMES M M CONCILIO R Algoritmos e Lógica de Programação 1ª e 2ª ed São Paulo Cengage Learning 2011 Capítulo 4 páginas 125 130 41 Sistemas de Informação Bibliografia PUGA S RISSETTI G Lógica de programação e estruturas de dados 2ª ed São Paulo Editora Pearson 2009 Capítulo 5 DEITEL H DEITEL P Java Como Programar 8ª ed Editora Pearson 2010 Capítulo 3 42