Linguagem de Programação III Profa. Msc. Cintia Carvalho Oliveira Doutoranda em Ciência da...
Transcript of Linguagem de Programação III Profa. Msc. Cintia Carvalho Oliveira Doutoranda em Ciência da...
Linguagem de Programação III
Profa. Msc. Cintia Carvalho OliveiraDoutoranda em Ciência da Computação - UFU
Mestre em Ciência da Computação – UFU
Bacharel em Ciência da Computação - UFJF
Strings
Concatenação Operador “+”
Substring String saudacao = “Bem vindo”; String s = saudacao.substring(0, 3);
Tamanho da String int n = saudacao.length();
Comparação s.equals(t); “Ola”.equals(t); “Ola”.equalsIgnoreCase(“Ola”);
Leitura de Dados
Antes do Java 5
Leitura de Dados
Diferença
Calculadora Financeira
Calcule o custo de um financiamento:
pagamento =
Controle de Fluxo
Sintaxe
if ( condição booleana ) { bloco } else { bloco }
Podemos concatenar expressões booleanas com
E && e
OU ||
Exemplo
Verificar se alguém tem menos de 18 anos e não é amigo do dono
Estruturas de repetição while ( condição booleana ) { bloco }
do { bloco } while ( condição booleana )
Exercícios:
1. Imprima todos os números de 150 a 300
2. Imprima todos os múltiplos de 3, entre 1 e 1000
3. Imprima os fatoriais de 1 a 10
O fatorial de um número n é n x (n-1) x (n-2) x ... x 1
O fatorial de 0 é 1
O fatorial de 1 é 1
O fatorial de 2 é 2
O fatorial de 3 é 6 ...
Estruturas de Repetição
for ( contador; condição booleana; contador) { bloco }
switch ( opcao ) {
case 1: ... break;
default: ... break;
}
Exercício (desafio) Imprima a seguinte tabela usando fors encadeados:
1
2 4
3 6 9
n nx2 nx3 nx4 ... nxn
Breaks rotuladosint n;
ler_dados: //identificação do laço
while (...){
...
for (...){
n = input.nextInt();
if ( n < 0) //nunca deveria acontecer
break ler_dados; // sai do laço de leitura de dados, ler_dados
}
}
if ( n <0 )
//lida com a situação inválida
else
//entrada de dados foi normal
Continue
Escopo de variável
Métodos e Variáveis de Classe
Os métodos e variáveis de classe utilizam a palavra reservada static em sua assinatura.
Exemplo:
public static long multiplicacao ( int valor1, int valor2)
private static double taxa = 11.0;
Como um método chama outro da mesma classe:
long mult = multiplicacao(num1, num2);
Um método chamando outro da classe Operacoes
long mult = Operacoes.multiplicacao(num1, num2);
Métodos e Variáveis de Classe
Array
Utilizando array
//Cria espaço para o array
Inicializador de array
//lista de inicializadores
Colocando valores em array
Arrays como argumentosArrays multidimensionais
Os arrays em Java são na verdade referências oculta, um método pode mudar os elementos do array.
Arrays multidimensionais:
double[][] balanco = new double[5][6];
balanco[i][j] = 1000.5;
Quiz – Certificação SCJP 6
Assinale a alternativa que indica quais dos arrays abaixo estão com a sintaxe correta de declaração e/ou inicialização.
int array1[] = new int[10];
int[] array2 = new int[];
int array3[] = new int[];
int[] array4 = new int[2]{1, 2};
int[] array5 = new int[]{1, 2};
int[] array6 = int[10];
int[] array7 = new int[1, 2, 3];
int array8[] = new int[1, 2, 3];
A. array1, array2 e array 4
B. array 6 e array 7
C. array 2, array 3, array8
D. array1 e array5
E. array6
Exercício
Role um dado 1000 vezes, e veja a frequência com que cada número é sorteado e imprima.
Random numRandom = new Random();
int num = numRandom.nextInt(6);
Exercício 2
Teste de multiplicação
O programa deverá perguntar a um aluno qual o resultado da multiplicação entre dois números inteiros randômicos de 0 a 20.
Se o aluno acertar imprima “Muito bem” ou “Excelente” ou “Bom trabalho” ou “Continue o bom trabalho”.
Caso o aluno erre imprima “Errado, tente novamente”, ou “Não. Tente novamente” ou “Não desista”, “Não. Continue tentando” e exiba novamente a operação.
Exercício 3
Preencha uma matriz de 10 por 20 com o resultado da multiplicação de seus índices. E em seguida imprima a matriz.