Você está aqui: Java ::: Projetos Java Completos - Códigos Fonte Completos Java ::: Jogos (Games)

Como criar o jogo Pedra, Papel, Tesoura em Java - Jogo completo em Java com código comentado

Quantidade de visualizações: 5981 vezes
Faça o download do código-fonte Pedra, Papel, Tesoura em Java

Nesta dica mostrarei como criar o famoso joguinho Pedra, Papel, Tesoura na linguagem Java. Trata-se de um código bem simples e que vou comentar linha a linha, para que você extraia todo o conteúdo necessário para deixar a sua lógica de programação ainda mais afiada.

Nesta versão eu mostrarei como jogar Pedra, Papel, Tesoura contra o computador. Depois de entender todo o código você não terá dificuldade para implementar uma versão que lhe permitirá jogar contra seus amigos.

Antes de vermos o código, eis uma imagem do jogo em execução:



Quais técnicas de programação vou aprender com o código desse jogo?

O joguinho Pedra, Papel, Tesoura é ótimo para estudantes de programação que está iniciando em Java e que gostariam de aprimorar sua lógica de programação, afinal, se você desenvolver uma boa lógica de programação, você conseguirá desenvolver soluções em qualquer linguagem.

Além de entender como funciona o desenvolvimento de jogos em Java, você reforçará o seu conhecimento de laços, estrutura condicional if...else, entrada e saída e fluxo e desvio do algorítmo.

Veja, por exemplo, um trecho de código no qual testamos se o jogador escolheu Pedra, Papel ou Tesoura, e também a escolha feita pelo computador:

// o jogador escolheu Pedra?
else if(jogador == 1){
  // o computador escolheu Papel?
  if(computador == 2){
    System.out.println("Você perdeu. Papel embrulha Pedra");
    vitoriasComputador++; // aumenta as vitórias do computador
  }
  else{ // o computador escolheu Tesoura
    System.out.println("Você ganhou. Pedra amassa Tesoura");
    vitoriasJogador++; // aumenta as vitórias do jogador
  }
}
// o jogador escolheu Papel?
else if(jogador == 2){
  // o computador escolheu Tesoura?
  if(computador == 3){
    System.out.println("Você perdeu. Tesoura corta Papel");
    vitoriasComputador++; // aumenta as vitórias do computador
  }
  else{ // o ocmputador escolheu Pedra
    System.out.println("Você ganhou. Papel embrulha Pedra");
    vitoriasJogador++; // aumenta as vitórias do jogador
  }
}
Como posso obter este código fonte?

Os links para você baixar todas as versões deste projeto estão abaixo:

1) PEDPAPTESJC - Jogo Pedra, Papel, Tesoura em Java Console - NetBeans IDE - Faça o download do código-fonte Pedra, Papel, Tesoura em Java.

Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto Java do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes.

Link para compartilhar na Internet ou com seus amigos:

Java ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular a área de um círculo em Java dado o raio do círculo

Quantidade de visualizações: 36682 vezes
A área de um círculo pode ser calculada por meio do produto entre a constante PI e a medida do raio ao quadrado (r2). Comece analisando a figura abaixo:



Sendo assim, temos a seguinte fórmula:



Onde A é a área, PI equivale a 3,14 (aproximadamente) e r é o raio do círculo.

O raio é a medida que vai do centro até um ponto da extremidade do círculo. O diâmetro é a medida equivalente ao dobro da medida do raio, passando pelo centro do círculo e dividindo-o em duas partes. A medida do diâmetro é 2 * Raio.

Veja agora um código Java completo que calcula a área de um círculo mediante a informação do raio:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

import java.util.Scanner;

public class Estudos{
  public static void main(String[] args){
    double area, raio;
 
    Scanner in = new Scanner(System.in);
    System.out.print("Informe o raio do círculo: ");
    raio = Float.parseFloat(in.nextLine());
    area = Math.PI * Math.pow(raio, 2);
    System.out.println("A area do círculo de raio " +
      raio + " é igual a " + area);

    System.exit(0);
  }
}

Ao executarmos este código nós teremos o seguinte resultado:

Informe o raio do círculo: 5
A area do círculo de raio 5.0 é igual a 78.53981633974483

A circunferência é um conjunto de pontos que estão a uma mesma distância do centro. Essa distância é conhecida como raio. A circunferência é estudada pela Geometria Analítica e, em geral, em um plano cartesiano. O círculo, que é formado pela circunferência e pelos infinitos pontos que preenchem seu interior, é estudado pela Geometria Plana, pois ele ocupa um espaço e pode ter sua área calculada, diferentemente da circunferência.


Java ::: Fundamentos da Linguagem ::: Tipos de Dados

Apostila Java - Como usar o tipo de dados double da linguagem Java

Quantidade de visualizações: 21820 vezes
O tipo de dados double é usado quando precisamos armazenar números de ponto-flutuante (com parte fracionária) na faixa 4.94065645841246544e-324 até 1.79769313486231570e+308. Este tipo ocupa 64 bits na memória (o mesmo que um long) e possui precisão de 14 ou 15 dígitos significativos. Veja um exemplo de seu uso:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

public class Estudos{
  public static void main(String args[]){
    double valor = 54.5;
    
    System.out.println("O valor da variável é: " +
      valor);
    
    System.exit(0);
  }
}

É importante observar que a maioria dos métodos numéricos das classes Java (principalmente Math) possuem parâmetros do tipo double. Isso é feito de modo que possamos fornecer argumentos do tipo byte, short, int, long, float, etc. Como todos os tipos primitivos (exceto boolean) podem ser convertidos para double sem a necessidade de cast, esta é sem dúvida uma escolha bem acertada dos arquitetos da linguagem.

Observe ainda que o tipo double não pode ser convertido implicitamente para nenhum outro tipo de dados primitivo. Se precisarmos convertê-lo para os tipos char, byte, short, int, long ou float, teremos que lançar mão de uma coerção (cast). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

double valor = 54.5;
int valor2 = (int)(valor);

É preciso ficar atento ao fato de que uma coerção de um tipo de ponto-flutuante para um tipo integral (inteiro) resulta na perda da parte fracionária do valor que está sofrendo o cast.

Não é recomendável usar o tipo double (ou float) para aplicações financeiras nas quais a precisão dos valores numéricos é de muita importância. Para estes casos recomenda-se usar a classe BigDecimal.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle

Exercício Resolvido de Java - Como testar se um ano é bissexto em Java - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou não

Quantidade de visualizações: 2363 vezes
Pergunta/Tarefa:

Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016.

Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400.

Escreva um programa Java que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não.

Sua saída deverá ser parecida com:

Informe o ano: 2024
O ano informado é bissexto.
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);  
    
    // vamos solicitar que o usuário informe um ano
    System.out.print("Informe o ano: ");
    int ano = Integer.parseInt(entrada.nextLine());
    
    // vamos verificar se o ano informado é bissexto
    if(((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0)){
      System.out.println("O ano informado é bissexto.");  
    }
    else{
      System.out.println("O ano informado não é bissexto.");  
    }
    
    System.out.println("\n");
  }
}



Vamos testar seus conhecimentos em Fundações

Sondagem à Percussão (SPT) e Rotativa (RQD)

Qual a densidade relativa calculada pela formulação empírica de Skempton, considerando que o valor de N corrigido foi de 20 a uma profundidade de 2m em um solo cujo peso específico é de 20 kN/m3?

A) 0,82.

B) 0,78.

C) 0,87.

D) 0,72.

E) 0,61.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Cisalhamento e detalhamento de vigas

O modelo clássico de treliça foi idealizado por Ritter e Mörsch no início do século XX e se baseia na analogia entre uma viga fissurada e uma treliça.

Acerca desse modelo, marque a alternativa correta:

A) As bielas comprimidas devem apresentar inclinação de 60º com o eixo longitudinal do elemento estrutural.

B) As armaduras de cisalhamento, conhecidas como estribos, devem ter inclinação entre 45 e 90º.

C) A treliça de Ritter e Mörsch deve ser hiperestática, havendo, dessa forma, engastamento nos nós.

D) As diagonais tracionadas da treliça de Ritter e Mörsch são equivalentes às bielas de concreto.

E) Na treliça de Ritter e Mörsch, os elementos resistentes são somente as armaduras longitudinal e transversal.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

Os ecossistemas de água doce podem ser classificados em lênticos e lóticos. É correto afirmar que

A) ecossistemas lênticos são ambientes aquáticos de água corrente como rios e riachos.

B) ecossistemas lóticos são ambientes aquáticos de água parada como lagos e lagoas.

C) em lagos e lagoas, termoclina é a zona de transição entre a camada superficial e a camada profunda, sendo uma camada fina de rápida variação de temperatura.

D) um reservatório pode apresentar compartimentos com características semelhantes a rios, e outro semelhantes ao ambiente de lagos, sendo que quanto maior o tempo de residência do reservatório, maior a tendência do reservatório de se comportar como rio.

E) a solubilidade do oxigênio na água está associada à temperatura e à pressão. Com a diminuição da temperatura e o aumento da pressão, ocorre redução da solubilidade do oxigênio na água.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Características do concreto armado

Sabe-se que o controle adequado da retração é fundamental no projeto e na construção de estruturas de concreto para evitar problemas como fissuração e para garantir a integridade da estrutura ao longo do tempo.

Marque a alternativa correta a respeito desse fenômeno.

A) A retração química pode levar à formação de produtos de hidratação que ocupam mais espaço do que os materiais originais.

B) A retração plástica ocorre após o endurecimento do concreto e está relacionada à perda contínua de umidade.

C) A retração por secagem ocorre durante o estado fresco do concreto, enquanto ele ainda está sendo moldado e antes de começar a endurecer.

D) A retração térmica ocorre devido a reações químicas dentro do concreto, causando expansão especialmente em estruturas expostas a condições ambientais extremas.

E) A retração por secagem é comum em superfícies de concreto expostas ao Sol ou ao vento durante a fase de cura, ou seja, no seu processo de endurecimento.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil

Fases de uma obra

Ao documento em que se registram, pela ordem de sucessão em que são executados, os serviços necessários à realização da construção e os respectivos prazos, dá-se o nome de:

A) Diário de obra.

B) Cronograma físico-financeiro.

C) Gráfico de Gantt.

D) Planejamento.

E) Cronograma físico.
Verificar Resposta Estudar Cards Todas as Questões

Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 17 usuários muito felizes estudando em nosso site.