Você está aqui: Java ::: Dicas & Truques ::: Matemática e Estatística

Calculando o arco tangente de um número

Quantidade de visualizações: 12840 vezes
/*
  O arco tangente de um número pode ser obtido
  com a função

  public static double atan(double a)

  Esta função recebe um valor double e retorna
  um valor na faixa -PI/2 <= x <= PI/2
*/

public class Estudos{
  public static void main(String[] args){
    double numero = 0.5;
    System.out.println("O arco tangente de " +
      numero + " é " + Math.atan(numero));
  }
}


Link para compartilhar na Internet ou com seus amigos:

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

Exercícios Resolvidos de Java - Escreva um programa Java para ler as notas n1 e n2 de um aluno e calcule a sua média aritmética

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

Escreva um programa Java para ler as notas n1 e n2 de um aluno e calcule a sua média aritmética. Se a média for igual ou superior a 7,0 mostre uma mensagem indicando que o aluno foi aprovado.

Se a média for igual ou maior que 3,5 e inferior a 7,0 seu programa deverá indicar que o aluno ficou de exame. Uma média menor que 3,5 indica reprovação direta.

No caso do exame, leia uma nota entre 0 e 10. Agora a média do aluno deverá ser a média entre a média anterior e a nota do exame. Se a nova média for igual ou superior a 5,0 o aluno estará aprovado. Caso contrário o aluno será reprovado.

Use validação para evitar que o usuário informe notas inválidas, ou seja, notas menores que 0 ou maiores que 10. Caso notas inválidas sejam fornecidas seu programa deverá solicitar a nota novamente até que o usuário forneça notas válidas.

Sua saída deverá ser parecida com:

Informe a nota N1: 9.4
Informe a nota N2: 11
Nota inválida. Informe a nota N2: 8.3
A média do aluno é: 8.85
O aluno foi aprovado

Informe a nota N1: 4.2
Informe a nota N2: 1.8
A média do aluno é: 3.0
O aluno reprovou direto.

Informe a nota N1: 5.7
Informe a nota N2: 6
A média do aluno é: 5.85
Informe a nota do exame: 7
A média do aluno com o exame é: 6.425
O aluno foi aprovado após o exame.
Resposta/Solução:

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

----------------------------------------------------------------------
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) {
    // variáveis usadas na resolução do problema
    double n1, n2, media, exame;
    
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos ler a primeira nota
    System.out.print("Informe a nota N1: ");
    n1 = Double.parseDouble(entrada.nextLine());
    // a nota é válida?
    while ((n1 < 0) || (n1 > 10)) {
      System.out.print("Nota inválida. Informe a nota N1: ");
      n1 = Double.parseDouble(entrada.nextLine());
    }
    
    // vamos ler a segunda nota
    System.out.print("Informe a nota N2: ");
    n2 = Double.parseDouble(entrada.nextLine());
    // a nota é válida?
    while ((n2 < 0) || (n2 > 10)) {
      System.out.print("Nota inválida. Informe a nota N2: ");
      n2 = Double.parseDouble(entrada.nextLine());
    }
    
    // vamos calcular a média do aluno
    media = (n1 + n2) / 2.0;
    System.out.println("A média do aluno é: " + media);
    
    // o aluno foi aprovado?
    if (media >= 7.0) {
      System.out.println("O aluno foi aprovado");
    }
    // o aluno ficou de exame?
    else if ((media >= 3.5) && (media < 7.0)){
      // vamos ler a nota do exame
      System.out.print("Informe a nota do exame: ");
      exame = Double.parseDouble(entrada.nextLine());
      // a nota é válida?
      while ((exame < 0) || (exame > 10)) {
        System.out.print("Nota inválida. Informe a nota do exame: ");
        exame = Double.parseDouble(entrada.nextLine());
      }
      
      // calcula a nota média
      media = (media + exame) / 2.0;
      System.out.println("A média do aluno com o exame é: " + media);
      
      // o aluno foi aprovado após o exame?
      if (media >= 5.0) {
        System.out.println("O aluno foi aprovado após o exame.");
      }
      else {
        System.out.println("O aluno foi reprovado após o exame.");
      }
    }
    // reprovou direto
    else {
      System.out.println("O aluno reprovou direto.");
    }
  }
}



Java ::: Classes e Componentes ::: JTextArea

Java Swing - Como evitar a barra de rolagem horizontal em um JScrollPane

Quantidade de visualizações: 10540 vezes
Em algumas situações nós precisamos usar um JScrollPane para permitir as barras de rolagem em algum componente visual do Java Swing. Nesta dica eu mostro como isso pode ser feito, e mostro também como a barra de rolagem horizontal pode ser evitada. Este comportamento é o esperado quando estamos trabalhando com caixas de texto do tipo JTextArea.

Veja um trecho de código no qual usamos a constante HORIZONTAL_SCROLLBAR_NEVER de ScrollPaneConstants para indicar que a barra horizontal não deverá ser exibida:

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

textArea = new JTextArea(10, 20);
JScrollPane scrollPane = new JScrollPane(textArea);
     
// Evitar o aparecimento da barra de rolagem horizontal
scrollPane.setHorizontalScrollBarPolicy(
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);



Java ::: Dicas & Truques ::: Threads

Threads em Java - O que são threads e como usá-las em seus programas Java

Quantidade de visualizações: 13496 vezes
Uma thread é um fluxo de execução de uma determinada tarefa em um programa. Na programação tradicional, temos apenas um fluxo de execução que começa a executar no início do programa e vai até o final. Com o uso de threads podemos ter várias tarefas sendo executadas ao mesmo tempo, cada uma independente da outra.

Em programas que contêm interfaces gráficas, o uso de múltiplos fluxos de execução (ou threads) é muito comum. Enquanto digitamos em uma caixa de texto, uma animação pode estar sendo executada ou um arquivo sendo baixado.

O Java permite que tenhamos várias threads sendo executadas ao mesmo tempo. Cada tarefa (ou thread) é uma instância da interface Runnable. Esta interface descreve apenas um método:

public void run();
Há duas formas de criarmos uma thread em Java. A primeira consiste em extender a classe Thread. Esta classe implementa a interface Runnable e fornece o método start(), que é usado para avisar ao gerenciador de threads que a thread recém criada está pronta para ser executada. Veja um exemplo:

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

// criamos uma classe que servirá como thread
class MinhaThread extends Thread{
  private String nome;  

  public MinhaThread(String nome){
    this.nome = nome;
  }   

  public void run(){
    for(int i = 1; i <= 20; i++){
      System.out.println(nome + ": " + i);
    }
  }
}

public class Estudos{
  public static void main(String[] args){
    // vamos criar duas threads
    MinhaThread t1 = new MinhaThread("Thread 1");
    t1.start(); // chamamos o método start() e não run()

    MinhaThread t2 = new MinhaThread("Thread 2");
    t2.start(); // chamamos o método start() e não run()    

    System.exit(0);
  }
}

Salve este código como Estudos.java, compile e execute. Veja que cada thread escreverá de 1 a 20 na tela. Observe como as duas threads se alternam em suas tarefas, ou seja, de tempos em tempos uma cede lugar para que a outra seja executada. Note também que, embora nossa classe tenha um método run() nós não o chamamos. O que fazemos é chamar o método start(), que torna a thread elegível para ser executada a qualquer momento.

Uma outra forma de criarmos uma thread é fazer com que nossa classe implemente a interface Runnable. Veja:

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

// criamos uma classe que servirá como thread
class MinhaThread implements Runnable{
  private String nome;  

  public MinhaThread(String nome){
    this.nome = nome;
  }   

  public void run(){
    for(int i = 1; i <= 20; i++){
      System.out.println(nome + ": " + i);
    }
  }
}

public class Estudos{
  public static void main(String[] args){
    // vamos criar duas threads
    MinhaThread mt1 = new MinhaThread("Thread 1");
    Thread t1 = new Thread(mt1);
    t1.start();    

    MinhaThread mt2 = new MinhaThread("Thread 2");
    Thread t2 = new Thread(mt2);
    t2.start();

    System.exit(0);
  }
}

O funcionamento do código é o mesmo. A diferença é que agora, a classe usada como thread implementa a interface Runnable. A forma de criação da thread também foi alterada. Agora nós criamos instâncias de Thread fornecendo nossa classe thread como argumento e chamamos o método start da classe Thread e não de nossa própria classe, como fizemos anteriormente.


Desafios, 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: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



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