Exercicios Java Basico Algoritmo
-
Upload
junior-ribeiro -
Category
Documents
-
view
217 -
download
0
Transcript of Exercicios Java Basico Algoritmo
-
7/23/2019 Exercicios Java Basico Algoritmo
1/8
Faculdades Integradas Esprito-SantensesUnidade de Computao e SistemasCurso Cincia da ComputaoDisciplina: Algoritmo I - 1 perodo !turma "# - $%%&'1(ro)* +enri,ue onteiro Cristo.o
Lista de exerccios Java Bsico
Para cada um dos problemas a seguir, construa um programa em Java para resolver o que se pede.
Lembre-se de, primeiramente, determinar quais so os dados de entrada e se for o caso solicit-los ao usurio. Apsesta entrada, determine o que deve ser processado (calculado, classificado, acumulado, contado etc... e, finalmente,fa!a a e"ibi!o, para o usurio, dos dados de sa#da.
$icas para estudar% somente aps ter escrito a sua tentativa, compare com a do colega, com a do monitor ou com ado professor. Lembre-se que a nica forma de aprender algoritmos e fazer muitos exerccios. &oc' ir observarque a sua compet'ncia em escrever algoritmos para solucionar os problemas ir evoluir gradualmente na medidaem que for investindo tempo de estudo.aso ten)a pouco tempo para estudar, fa!a pelo menos * e"erc#cios do primeiro con+unto e, e"erc#cios de cadaum dos con+untos seguintes. as to logo consiga organiar o seu tempo, fa!a o restante dos e"erc#cios.
Conjunto 1: programas seqenciais com entrada, clculo e sada
1. $etermine qual / a idade que o usurio fa no ano atual. Para isso solicite o seu ano de nascimento e oano atual.
0olu!o%
/*
Determine qual a idade que o usurio faz no ano atual.
Para isso solicite o ano de nascimento do usurio e o ano atual.
*/
importjava.util.Scanner;
publicclassExercicio0 !
publicstaticvoidmain"Strin#$% ar#s& !
intano'tual( ano)ascimento( qtde'nos;
Sstem.out.+rintln",Entre com o ano atual-,&;
ano'tual newScanner"Sstem.in&.nextnt"&;
Sstem.out.+rintln",Entre com o ano de nascimento-,&;
ano)ascimento newScanner"Sstem.in&.nextnt"&;
qtde'nos ano'tual ano)ascimento;
Sstem.out.+rintln",Em ,1ano'tual1, voc2 faz "ou j fez& ,1qtde'nos1,
anos3,&;
4
4
2. alcule e e"iba a quantidade de salrios m#nimos que um determinado funcionrio gan)a. Para isto,pe!a o valor do seu salrio e o valor do salrio m#nimo atual.
3. 0olicite a quantidade de )omens e de mul)eres de uma turma da faculdade. 1m seguida calcule ee"iba o percentual (separadamente de )omens e mul)eres desta turma.
Obs.: em Java a diviso de valores inteiros d como resultado um nmero inteiro, ao menos que um
dos nmeros seja do tipo ponto flutuante (double, por exemplo). ara transformar inteiro para
double basta fa!er um cast: "(double)x# $ transforma "x# em double.
1/8
-
7/23/2019 Exercicios Java Basico Algoritmo
2/8
4. $etermine e e"iba a m/dia aritm/tica de um aluno a partir de suas 2 notas.
5. alcule e e"iba o valor final de uma d#vida. Para isto pergunte ao usurio o valor inicial do d/bito, aquantidade de meses e os +uros mensais. 3se o calculo de +uros simples.
6. alcule e e"iba rea ocupada por um c#rculo cu+o raio mede metros. A rea de um c#rculo / (PI)multiplicado pelo raio elevado ao quadrado. 1m Java o valor de est dispon#vel na constanteat).P4
7. alcule e e"iba a comisso de 567 de um gar!om num restaurante a partir do valor da despesa de umcliente.
Conjunto : programas com estruturas condicionais
8. 8ransforme um n9mero :acional (formado por numerador e denominador para um n9mero :eal.Antes de dividir, verifique se o denominador / diferente de ero. 1mita uma mensagem de alerta aousurio se for ero.
9. &erifique se o usurio / maior de idade ou no.
1. 3m banco concede empr/stimo a seus clientes no valor m"imo de ;67 do valor do seu salrioliquido. :eceba o valor do salrio bruto, o valor dos descontos e o valor do poss#vel empr/stimo deum cliente, em seguida avise se ele poder ou no faer o empr/stimo.
11. 0olicite o nome e as tr's notas de uma disciplina que o usurio cursa. 1m seguida informe se ele foiaprovado, ficou de recupera!o ou foi reprovado. A m/dia de aprova!o / .6? a m/dia derecupera!o / .6? e a m/dia do reprovado / @ .6
0olu!o%/* Exerc5cio 6 */
importjava.util.Scanner;
publicclassExercicio6 !
publicstaticvoidmain"Strin#$% ar#s& !
Strin# nome;
doublenota( nota6( nota7( media;
Sstem.out.+rintln",8ual o seu nome9,&;
nome newScanner"Sstem.in&.next"&;
Sstem.out.+rintln",Entre com a +rimeira nota-,&;
nota newScanner"Sstem.in&.nextDou:le"&;
Sstem.out.+rintln",Entre com a se#unda nota-,&;
nota6 newScanner"Sstem.in&.nextDou:le"&;
Sstem.out.+rintln",Entre com a terceira nota-,&;nota7 newScanner"Sstem.in&.nextDou:le"&;
media "nota1nota61nota7&/7;
if"media
-
7/23/2019 Exercicios Java Basico Algoritmo
3/8
12. A partir da idade informada de um cidado diga se ele no pode votar (idade inferior a 5, ou se ovoto / facultativo (idade igual a 5 ou 5> ou ainda maior do que >6, ou ainda se o voto / obrigatrio
para idades entre 5B e >6 (incluindo estes valores.
13. Acrescente no problema anterior possibilidade dele faer prova final em caso de recupera!o. Cestecaso a nota de aprova!o passa a ser
-
7/23/2019 Exercicios Java Basico Algoritmo
4/8
27. $escubra e apresente o maior entre tr's n9meros fornecidos pelo usurio. aso eles se+am iguais,avise ao usurio.
28. oloque em ordem crescente tr's n9meros quaisquer.omo desafio, tente depois faer uma solu!o com apenas ; estruturas de deciso.
29. :eceba do usurio dois pontos do plano cartesiano. 1stes pontos devem representar os v/rticessuperior esquerdo e inferior direito de um retNngulo paralelo aos ei"os " e O.Primeiramente informe se estes pontos podem constituir um retNngulo, ou se+a%- se / um retNngulo- se / uma reta )oriontal- se / uma reta vertical- se / um ponto
$epois, calcule e e"iba rea deste retNngulo.1m seguida, receba outro ponto e e"iba a posi!o dele em rela!o ao retNngulo.3ma das 56 seguintes situa!Ies / poss#vel%- acima e esquerda
- acima- acima e direita- embai"o e esquerda- embai"o- embai"o e direita- esquerda- direita- dentro do retNngulo- na lin)a do retNngulo
3. :eceba dois retNngulos atrav/s dos seus quatro v/rtices. ada v/rtice / um ponto e / formado por
duas coordenadas " e O. a!a a cr#tica destes pontos, pois no pode )aver sobreposi!o entre eles.Kbserve que o usurio pode fornec'-los em qualquer ordem. 1m seguida informe se os doisretNngulos se interceptam em algum lugar.
Conjunto !: programas com estruturas de repeti"#o
31. 1"iba mil vees o n9mero 566.
32. 1"iba todos os n9meros de 5 a 66, um ao lado do outro com um espa!o em branco de separa!o.
33. 1"iba todos os n9meros pares de 56 a *66.
34. 1"iba 6 n9meros sorteados de 5 a 566 para o usurio.
35. 1"iba uma quantidade de n9meros sorteados determinada pelo usurio. Pe!a tamb/m que o usuriodetermine a fai"a do sorteio.
36. 1"iba todos os n9meros #mpares e"istentes entre dois n9meros informados pelo usurio.$ica% use o operador 7 para calcular o resto da diviso entre dois n9meros.
37. alcule o fatorial de um n9mero.
38. &erifique se um n9mero / primo ou no.39. &erifique se um n9mero / perfeito, ou se+a, se a soma dos seus divisores (e"ceto o prprio n9mero /
igual a ele mesmo.
4/8
-
7/23/2019 Exercicios Java Basico Algoritmo
5/8
4. 0olicite ao usurio a idade de cada um componente de um grupo de pessoas. A quantidade de pessoastamb/m ser determinada por ele.Aps o t/rmino da entrada, apresente%
a. a m/dia das idades,
!. a maior idade,
c. a menor idade,
d. a quantidade de pessoas maior de idade.
41. rie um +ogo para o usurio descobrir um n9mero sorteado de 5 a 566. A cada tentativa dele, forne!auma dica falando se o n9mero / maior ou menor. Quando ele descobrir e"iba uma mensagem de
parab/ns e mostre em quantas tentativas ele conseguiu.
42. Aproveitando o algoritmo do e"erc#cio anterior, e"iba uma lista de 26 grupos de n9meros sorteados de6 a M. ada grupo possui ; n9meros e deve e"ibido em ordem crescente.
43. alcule a m/dia aritm/tica de 66 valores fornecidos pelo usurio.
44. odifique o problema anterior para que a quantidade de valores tamb/m se+a fornecida pelo usurio.
45. $etermine o maior valor de uma lista de 566 n9meros fornecidos pelo usurio.
46. $etermine a quantidade de )omens e mul)eres (separadamente que so maiores de idade, baseadonuma lista de *66 pessoas.
47. Leia uma rela!o de pacientes de uma cl#nica, cada um com o nome, o se"o, o peso, a idade e a altura.Para sinaliar o fim da lista ser fornecido RfimS no nome do 9ltimo paciente.1"iba um relatrio contendo%i. a quantidade de pacientes.ii. a m/dia de idade dos )omens.
iii. a quantidade de mul)eres com altura entre 5,6 e 5,>6 e peso acima de >6Gg.iv. a quantidade de pessoas com idade entre 5B e *.v. o nome do paciente mais vel)o.vi. o nome da mul)er mais bai"a.vii. T neste item, voc cria uma situa/o interessante constr0i o al&oritmo correspondente.
48. $escida se um aluno ser aprovado, reprovado por nota ou reprovado por faltas. 3se o sistema deavalia!o da A10A. Pergunte ao usurio a quantidade de notas para clculo da m/dia semestral,sendo que todas elas possuem o mesmo peso.
49. 1"iba os 6 primeiros n9meros da seqU'ncia de ibonacci
(5,5,*,;,,B,5;,*5,;2,,BM,522,*;;,;>>,....
5. 4mprima e"atamente o n-eimo termo da seqU'ncia de ibonacci.
51. 1"iba os n primeiros termos da seqU'ncia de 8ribonacci (soma dos tr's anteriores. 4nicia com 5,5 e *.
52. A )istria do rei que e tornou pobre% aps perder uma aposta com um s9dito, ele teve que pagar umaquantia muito grande em sacos de arro. A aposta feita anteriormente era que se o s9dito gan)asse orei teria que pagar um gro de arro colocado na primeira casa de um tabuleiro de "adre. Ca segundacasa teria que pagar o dobro, ou se+a, dois gros de arro, e assim sucessivamente at/ a casa n9mero2. 1"iba quantos gros de arro este s9dito teria que gan)ar, somando todas as 2 casas.$epois tente e"ibir a quantia de sacos de arroV
5/8
-
7/23/2019 Exercicios Java Basico Algoritmo
6/8
53. 1"iba a tabuada de um n9mero fornecido pelo usurio. Por e"emplo se ele digitar o n9mero , ento sermostrado%
" 5 = " * = 56 " ; = 5 " 2 = *6 " = * " = ;6 " > = ; " B = 26 " M = 2 " 56 = 6
54. Apresente uma tabela de converso de reais em dlares. 1la deve ser totalmente configurvel, ou se+ao usurio pode informar o valor inicial e final, o valor de incremento e o valor de 5 dlar. Apresenteos n9meros no formato monetrio com duas casas decimais.
55. A operadora de celular &ai-&ai possui um plano com o valor mensal de 6,66 que permite 566minutos por m's para qualquer n9mero. Al/m disso, ela oferece 6 minutos a mais para liga!Iesdestinadas a um n9mero da prpria &ai-&ai. Ainda neste plano ela tem uma promo!o onde cada
minuto gasto para telefone fi"o consome somente a metade. K valor do minuto e"cedente para outrasoperadoras / de 6., e para a prpria &ai-&ai / 6.*6.a!a um programa que permita ao usurio entrar com o tipo de liga!o (WoX = outras operadoras, WvX =a prpria &ai-&ai, ou WfX = telefone fi"o e a quantidade de minutos. A cada entrada, deve-se informaro quanto que ele tem de saldo e o valor a pagar. a!a isto enquanto ele indicar que e"istem maisliga!Ies a serem digitadas.
56. rie um programa para simular uma urna de vota!o para e"atamente ; candidatos. Logo no in#ciodeve-se perguntar ao usurio os nomes dos candidatos. Permita votos em branco.Ao t/rmino de toda a entrada, apresente o nome, a quantidade de votos e o percentual de cadacandidato. Apresente tamb/m a quantidade e o percentual dos votos em branco e quem foi o gan)ador
da elei!o.
57. 1"iba todas as datas de um calendrio que esto entre duas datas informadas pelo usurio (dia, m's eano. 0upon)a que as duas datas informadas se+am vlidas.
58. Leia uma data e uma quantidade de dias, em seguida e"iba esta data somada pela quantidade de diasfornecida. 1"emplo% *MF62F*66> E ; = 6*F6F*66>.
Conjunto $: programas com estruturas de repeti"#o anin%adas
59. 1"iba as 56 tabuadas (de 5 a 56.
6. Apresente uma tabela contendo a evolu!o do valor de uma d#vida ao longo dos meses e anos a partir de+aneiro de *66>. 0olicite o valor da d#vida, a ta"a de corre!o e a quantidade de anos.Por e"emplo, para uma d#vida de :Y 566,66 ao longo de * anos e com uma ta"a de corre!o de 5.B 7 ao m's%
Anos Jan ev ar Abr ai Jun Jul Ago 0et Kut Cov $e
*66> 566,66 565,B6 56;,; 56,6 56>,26 56M,;; 555,;6 55;,;6 55,;2 55>,2* 55M,; 5*5,B
*66B 5*;,B> 5*,56 5*B,;> 5;6,B 5;;,6; 5;,2; 5;>,B> 526,; 52*,B> 52,2 52B,6 56,>;
6/8
-
7/23/2019 Exercicios Java Basico Algoritmo
7/8
61. $esen)e a seguinte pirNmide de asteriscos. K usurio determina a quantidade de lin)as.
*
**
***
****
*****
******
***************
*********
**********
***********
************
...
62. $esen)e a seguinte pirNmide de n9meros. K usurio determina a quantidade de lin)as.
0
06 06
07 07 07
0@ 0@ 0@ 0@0= 0= 0= 0= 0=
0A 0A 0A 0A 0A 0A
0< 0< 0< 0< 0< 0< 0