Você está na página 1de 2

Lista de Exerccios 01

1) (Fcil) Crie um programa que calcule a velocidade mdia de um veculo com base em
uma distncia por ele percorrida (em metros) e no tempo (em minutos) gasto para isso,
dados como entrada do programa. Ao final, deve apresentar a velocidade mdia do veculo
em kilometros por hora (km/h).

2) (Fcil) Crie um programa que solicite um nmero inteiro ao usurio e lhe pergunte, em
seguida, se o nmero por ele informado maior que zero e logo em seguida se ele par.
Analisando o nmero informado e a resposta do usurio, o aplicativo deve determinar se as
respostas so verdadeiras ou falsas. O programa deve continuar perguntando at que o
nmero inserido no incio do programa seja zero.

3) (Mdio) Escreva um programa em Java que tenham um array de inteiros como entrada
juntamente com o nmero de elementos, e calcule:

a) a moda dos elementos no array (elemento mais freqente).


b) a mediana dos elementos no array (elemento central).
c) a mdia.

4) (Difcil) Escreva um programa Java capaz de jogar o jogo da velha e que nunca perca.

5) (Mdio) Escreva um programa que, a partir de um nome informado pelo usurio, exiba
suas
iniciais. As iniciais so formadas pela primeira letra de cada nome, sendo que todas
devero
aparecer em maisculas na sada do programa. Note que os conectores e, do, da, dos, das,
de, di, du no so considerados nomes e, portanto, no devem ser considerados para a
obteno das iniciais. As iniciais devem ser impressas em maisculas, ainda que o nome
seja entrado todo em minsculas.

Exemplos:

Maria das Graas Pimenta => MGP


Joo Carlos dos Santos => JCS
Jos da Silva => JS
Pedro Pereira Teixeira => PPT

6) (Dficil) Um algoritmo gentico tcnica de inteligncia artificial que se inspira na forma


como a
natureza funciona e na teoria da evoluo para resolver problemas complexos. Os
algoritmos genticos funcionando mantendo uma populao de estruturas que evoluem
de forma semelhante evoluo das espcies.

A recombinao e a mutao so os operadores bsicos de um algoritmo gentico.


Considerando que os indivduos da populao so codificados atravs de strings, o
operador de recombinao recebe duas strings S1 e S2, sorteia aleatoriamente um ponto
de corte em S1 e S2. Em seguida, realizada a troca de informaes genticas de S1 e S2,
de forma a gerar dois novos indivduos filhos. A figura abaixo ilustra o processo de
recombinao.

O operador de mutao consiste em sortear aleatoriamente uma posio em um dos


indivduos filhos, e ento modificar aleatoriamente o contedo daquela posio. A figura
abaixo ilustra o processo de mutao.

Construa um programa em Java que implemente e utilize as funes recombinao e


mutacao:

A funo recombinao recebe como parmetro 4 Strings (S1, S2, S3 e S4), onde
S1 e S2 so as Strings representado os indivduos pais e S3 e S4 devem retornar os
dois indivduos filhos gerados com a recombinao de S1 e S2. Ambas as strings
devem possuir o mesmo tamanho.
A funo mutao recebe como parmetro uma string S1 e modifica o contedo de
S1 realizando o processo de mutao.
O seu programa deve ler duas strings S1 e S2 (de mesmo tamanho), fazer a
recombinao dos dois indivduos e aplicar uma mutao em um dos indivduos
resultantes. Por ltimo, o programa deve exibir os 4 indivduos da populao (S1,
S2, S3 e S4).

Você também pode gostar