8 - Dado:
for, faa o usurio reinserir o wager ate um wager vlido ser inserido. Depois que um wager
correto foi inserido, execute um jogo de dados. Se o jogador ganhar, aumente bankBalance
por wager e exiba o novo bankBalance. Se o jogador perder, diminua bankBalance por
wager, exiba o novo bankBalance, verifique se bankBalance tornou-se zero e, se tiver
ocorrido, exiba a mensagem Sorry. You busted! [Desculpe, mas voc faliu.] . Enquanto
o jogo se desenvolve, exiba vrias mensagens para criar uma conversa, como Oh, you re
going for broke, huh? [Oh, parece que voc vai quebrar, hein?] ou Awcmon, take a
chance! [Ah, vamos l, d uma chance para sua sorte!] ouYou re up big. Nows the
time to cash in your chips! [Voc est montado na grana. Agora hora de trocar essas
fichas e embolsar o dinheiro!]. Implemente a conversa como um mtodo separado que
escolhe aleatoriamente a string a exibir.
31 - (Jogo da velha) Crie uma classe TicTacToe que permitir escrever um programa
completo para reproduzir o jogo da velha. A classe contm um array bidiniensional privado
3 por 3 de inteiros. O construtor deve inicializar a grade vazia com todos como zero.
Permita dois jogadores humanos. Para onde quer que o primeiro jogador se mova, coloque
um 1 no quadrado especificado; coloque um 2 no local para o qual o segundo jogador se
mover. Todo movimento deve ocorrer em um quadrado vazio. Depois de cada jogada,
determine se o jogo foi ganho e se aconteceu um empate. Se voc se sentir motivado.
modifique seu programa de modo que o computador faa o movimento para um dos
jogadores. Alm disso, permita que o jogador especifique se quer ser o primeiro ou o
segundo. Se voc se sentir excepcionalmente motivado. desenvolva um programa que jogue
o Tic-Tac-Toe tridimensional em uma grade 4 por 4 por 4. [Nota: Esse um projeto
desafiador que pode consumir muitas semanas de esforo!]
32 (Oito rainhas) Outro problema difcil para fs de xadrez o problema das oitos
rainhas, que pede o seguinte: possvel colocar oito rainhas em um tabuleiro de xadrez
vazio de modo que nenhuma rainha esteja atacando qualquer outra (isto , sem que duas
rainhas estejam na mesma linha. na mesma coluna ou na mesma diagonal)? (Dica:
possvel atribuir um valor para cada quadrado do tabuleiro de xadrez para indicar quantos
quadrados de um tabuleiro de xadrez vazio so eliminados se uma rainha for colocada
nesse quadrado). Uma vez que esses nmeros de eliminao so colocados em todos os
64 quadrados, uma heurstica apropriada poderia ser como segue: coloque a prxima rainha
no quadrado com o menor nmero de eliminao. Por que essa estratgia intuitivamente
atraente?
33 - (Crivo de Eratstenes) Um nmero primo qua1quer inteiro maior que um que
igualmente divisvel apenas si mesmo e 1. O crivo de Eratstenes um mtodo de localizar
nmeros primos. Ele opera como segue:
a) Crie um array boolean de tipo primitivo com todos os elementos inicializados como true.
Os elementos do array com ndices primos permanecero true. Todos os outros elementos
do array por fim so configurados como false.
b) Iniciando com o indice de array 2, determine se um dado elemento true. Se for, faa
um loop pelo restante do array e configure como false cada elemento cujo indice mltiplo
do ndice para o elemento com valor true. Ento continue o processo com o prximo
elemento com valor true. Para o indice de array 2, todos os elementos alm do elemento 2
no array que tiverem ndices mltiplos de 2 (ndices 4, 6, 8, 10 etc.) sero configurados
como false; para o ndice de array 3, todos os elementos alm do elemento 3 no array que
tiverem ndices mltiplos de 3 (ndices 6, 9, 12, 15 etc.) sero configurados como false; e
assim per diante.
Quando esse processo for concludo, os elementos de array que ainda forem true indicam
que o indice um nmero primo. Esses ndices podem sei exibidos. Escreva um aplicativo
que utiliza um array de 1000 elementos para determinar e exibir os nmeros primos entre 2
e 999. Ignore elementos de array 0 e 1.
43 - (Crculos Concntricos utilizando o mtodo drawArc) Escreva um aplicativo que
desenha uma srie de oito crculos concntricos. Os crculos devem ser separados por 10
pixels. Utilize o mtodo Graphics drawArc.
44 - (Tringulos aleatrios) Escreva um aplicativo que exibe tringulos gerados
aleatoriamente em cores diferentes. Cada tringulo deve ser preenchido com uma cor
diferente. Utilize a classe GeneralPath e o mtodo fill da classe Graphics2D para desenhar
os tringulos.
45 - (Grfico de torta) Escreva um programa que insere quatro nmeros e os dispem em
um grfico de torta. Utilize a classe Arc2D.Double e o mtodo fill da classe Graphics2D
para realizar o desenho. Desenhe cada pedao da torta em uma cor separada.