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