Exercícios sobre comando WHILE-DO / FOR – Java

Transcrição

Exercícios sobre comando WHILE-DO / FOR – Java
UNIVERSIDADE DO VALE DO RIO DOS SINOS
Ciências Exatas e Tecnológicas
Exercícios sobre comando WHILE-DO / FOR – Java
O objetivo desta lista é praticar o uso da instrução WHILE e FOR. Para facilitar a resolução dos problemas,
primeiro determine o algoritmo com fluxograma, depois o codifique. Quando cabível, faça a modelagem das
classes primeiro.
1. Escreva um programa em Java leia n números inteiros para um array de elementos inteiros. Então,
primeira tarefa do programa é solicitar a leitura da quantidade de números da lista. A segunda tarefa é
solicitar ao usuário a digitação de cada um dos números (usando while). Por fim, imprimir uma listagem
destes números (usando for). Depois solicite ao usuário um um número para busca. Faça um loop para
percorrer a lista de número e, se encontrar o número procurado, imprimir o número, a posição aonde ele
está no array e interromper o loop. Caso não ache na lista, imprimir mensagem de número não
encontrado.
2. Altere o programa 1 da lista de exercícios sobre comando IF para que leia 2 números digitados pelo
usuário e determine qual deles é o menor. O programa deve executar esta rotina até que o usuário
desista de executar o programa. Primeira tarefa portanto, é saber do usuário se ele deseja continuar
digitando os números ou deseja parar. Por exemplo: se ele optar por 0 (zero) o sistema encerra a
execução; caso contrário, se ele optar por 1, o sistema deve ler os dois números e executar a rotina de
verificação de qual é o menor.
3. Escreva uma classe que faça a validação de dados (Validacao), com um método para validar um nome
próprio (ehNomeValido(nome)). O método deve retornar true se passar pelas seguintes regras:
Se o parâmetro não for nulo.
Se o parâmetro não for uma String vazia
Se o parâmetro tiver duas partículas (duas palavras separadas por um espaço)
Se cada palavra começa com letra maiúscula. (use for ou while)
4. Alterar a classe Funcionario incluindo um método para fazer o aumentoSalarial de um objeto
funcionário. Por padrão, o aumento será de 15%. Entretanto, deve ser aplicada uma regra diferente para
cada faixa salarial. Regras:
para 1.500,00 <= salarioAtual < 1.750,00: aumento igual a 12%
para 1.750,00 <= salarioAtual < 2.000,00: aumento igual a 10%
para 2.000,00 <= salarioAtual < 3.000,00: aumento igual a 7%
para acima de 3.000,00: aumento igual a 5%.
Ainda, crie um array de funcionários e efetue o cálculo de aumento para cada um.
5. Continuação da calculadora. Implemente o programa da calculadora utilizando uma instrução switchcase para determinar a operação que deve ser executada, conforme o usuário escolheu no menu de
opções. Conforme a opção escolhida pelo usuário, um diferente método da calculadora é executado. Por
exemplo: digamos que a opção esteja associada ao método somar(op1, op2), então será executado
este método da calculadora, e o resultado obtido será a soma dos operandos 1 e 2. O usuário deve
continuar a execução da calculadora até opte pela opção “sair”. Ainda responda: qual é a opção mais
adequada de interação: usar for ou usar while? Por quê?
6. Implementa uma classe que execute as funcionalidades de uma conta-corrente de uma pessoa. Toda a
conta tem um número, uma pessoa vinculada e um saldo. O saldo é atualizado conforme o tipo de
movimentação bancária: depósito ou retirada. Se for um depósito, o dinheiro é creditado ao saldo, se for
retirara, o dinheiro é debitado do saldo. Cada movimento deve ser registrado num array de movimentos.
Depois, habilite a opção extrato da conta, que exibe a lista de movimentos realizados na conta.
7. Faça o implementação do jogo pedra-papel-tesoura. O jogo deve imprimir vitória, empate ou derrota
conforme a opção que o jogador escolher e a opção que sorteada aleatoriamente para o computador.
Faça a modelagem, o fluxo para o método play e a implementação deste jogo. Obs.: pedra ganha de
Av. Unisinos, 950
Caixa Postal 275
CEP 93022-000
São Leopoldo
Fone: (51) 3591-1122 Fax: (51) 3590-8172
Rio Grande do Sul
Brasil
http://www.unisinos.br
Email: [email protected] Site: http://www.inf.unisinos.br/~ltonietto
Página 1/2
UNIVERSIDADE DO VALE DO RIO DOS SINOS
Ciências Exatas e Tecnológicas
Exercícios sobre comando WHILE-DO / FOR – Java
tesoura, que ganha de papel, que ganha de pedra. O jogador pode jogar enquanto não optar por “sair”.
Quando fizer isto, antes de sair, o jogo deve mostrar um relatório de vitórias, derrotas e empates.
8. Estudo de caso. Fazer um jogo da velha (TicTacToe). O jogo da velha pode ser representado numa matriz
de 3 linhas e 3 colunas. O lance do computador deve ser feito considerando-se que as melhores jogadas
são nas diagonais e que se o usuário tem alguma possibilidade de fechar o jogo, o computador deve obtar
pela posição que bloqueia esta opção. Um jogo termina quando um jogador fecha uma linha, uma coluna
ou uma diagonal. Faça a modelagem de classes, o fluxo para o método “play” do computador e a
implementação do jogo. Para testar se o jogo já terminou é necessário percorrer a matriz do tabuleiro.
Data da revisão: 9/4/2008
Av. Unisinos, 950
Caixa Postal 275
CEP 93022-000
São Leopoldo
Fone: (51) 3591-1122 Fax: (51) 3590-8172
Rio Grande do Sul
Brasil
http://www.unisinos.br
Email: [email protected] Site: http://www.inf.unisinos.br/~ltonietto
Página 2/2