Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Usando o laço do...while para pedir ao usuário para informar números inteiros e calcular a quantidade de números positivos, negativos, a soma e a média - Desafio de Programação Resolvido em Java

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

Escreva um programa Java que usa o laço do...while para ler números inteiros até que o valor lido seja igual a 0. Em seguida mostre a quantidade de valores positivos e negativos, a soma dos valores e a média aritmética (sem incluir o valor 0 na contagem e no cálculo da média). A média deverá ser exibida como um valor de ponto flutuante.

Sua saída deverá ser parecida com a mostrada abaixo:

Informe um número inteiro (0 para sair): 5
Informe um número inteiro (0 para sair): -4
Informe um número inteiro (0 para sair): 3
Informe um número inteiro (0 para sair): 8
Informe um número inteiro (0 para sair): -2
Informe um número inteiro (0 para sair): 0
Quantidade de números positivos: 3
Quantidade de números negativos: 2
A soma dos números lidos é: 10
A média aritmética é: 2.0
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 exercicios;

import java.util.Scanner;

public class Exercicios {
  public static void main(String[] args) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
      
    // declaração das variáveis
    int numero, quantLidos = 0, soma = 0;
    int quantPositivos = 0, quantNegativos = 0;
      
    // laço do...while que repetirá até que o usuário informe o valor 0
    do {
      // lê o primeiro ou próximo número
      System.out.print("Informe um número inteiro (0 para sair): ");
      numero = Integer.parseInt(entrada.nextLine());

      if(numero > 0){ // o número é positivo?
        quantPositivos++;
      }
      else if(numero < 0){ // o número é negativo?
        quantNegativos++;
      }

      // soma este número à soma já existente
      soma += numero;
      // aumenta a contagem dos números lidos
      if(numero != 0){ // não incluir o 0 para sair do programa na contagem
        quantLidos++;
      }
    }
    while(numero != 0); // condição de parada do laço

    if(quantLidos == 0){
      System.out.println("Você não informou nenhum número.");
    }
    else{
      System.out.println("Quantidade de números positivos: " + quantPositivos);
      System.out.println("Quantidade de números negativos: " + quantNegativos);
      System.out.println("A soma dos números lidos é: " + soma);
      System.out.println("A média aritmética é: " + ((soma * 1.0) / quantLidos));
      
      // note a multiplicação de soma por 1.0 para gerar um valor de ponto flutuante
      // antes da divisão
    }    
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Dicas & Truques ::: Gráficos

Como desenhar em um JComponent do Java Swing (JLabel, JButton, JPanel, etc) usando o método paintComponent()

Quantidade de visualizações: 10048 vezes
A classe JComponent possui um método chamado paintComponent(Graphics g) que recebe um objeto da classe Graphics que pode ser usado para desenhar na superfície do componente. Desta forma, qualquer componente que herda de JComponent pode ser usado para esta finalidade.

Para demonstrar como isso é feito, veja um trecho de código no qual desenhamos uma linha em um JLabel e o anexamos à janela do aplicativo. Observe a criação de uma classe personalizada que herda de JLabel:

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

import java.awt.*;
import javax.swing.*;

public class Estudos extends JFrame{
  public Estudos() {
    super("Desenhando em um JLabel");
    
    Container c = getContentPane();

    // Cria o JLabel
    MinhaLabel label = new MinhaLabel();
    c.add(label);

    setSize(350, 250);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(
      JFrame.EXIT_ON_CLOSE);
  }
}

// classe personalizada que permite desenhar
class MinhaLabel extends JLabel{
  protected void paintComponent(Graphics g){
    super.paintComponent(g);
    g.drawLine(0, 0, 200, 200); 
  }
}



Java ::: Dicas & Truques ::: Programação Orientada a Objetos

Programação orientada a objetos em Java - Como usar o modificador protected em suas variáveis e métodos Java

Quantidade de visualizações: 10608 vezes
O modificador protected pode ser aplicado às variáveis e métodos de uma classe. Membros de uma classe marcados como protected podem ser acessados por qualquer classe no mesmo pacote (package) ou por suas classes derivadas (subclasses), mesmo que estas classes estejam em pacotes diferentes.

Contudo, a discussão sobre este modificador é um pouco mais profunda. Subclasses residentes em outros pacotes tem algumas limitações em relação ao acesso de variáveis e métodos marcados como protected em suas superclasses. Em resumo, uma subclasse em um pacote diferente pode sobrescrever métodos protected de suas superclasses. Além disso, instâncias destas subclasses podem acessar ou modificar variáveis protected herdadas de suas superclasses, assim como chamar os métodos protected herdados. Porém, estas instâncias não têm liberdade para efetuar estas ações em outras instâncias das mesmas subclasses.

Veja um exemplo no qual mostramos como acessar variáveis marcadas como protected em uma classe a partir de sua classe derivada:

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

// superclasse
class Pessoa{
  protected String nome;

  public String getNome(){
    return this.nome;
  }
}

// subclasse
class Aluno extends Pessoa{
  public Aluno(){
    this.nome = "Osmar J. Silva";
  }
}

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria um objeto da classe Aluno
    Aluno a = new Aluno();
    System.out.println(a.getNome());
  } 
}



Java ::: Pacote java.lang ::: String

Como testar o conteúdo no final de uma string usando Java - O método endsWith() da classe String

Quantidade de visualizações: 79 vezes
Em algumas situações nós precisamos de verificar o conteúdo no final de uma palavra, frase ou texto. Para isso nós podemos usar o método endsWith() da classe String da linguagem Java.

Este método recebe a substring a ser testada e retorna true se ela for encontrada no final da string e false em caso contrário. Note que este método diferencia maiúsculas de minúsculas.

Veja um exemplo completo de seu uso:

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

package arquivodecodigos;

public class Estudos{
  public static void main(String[] args){
    String arquivo = "Pessoa.java";
    
    // o nome do arquivo termina em ".java"?
    if(arquivo.endsWith(".java")){
      System.out.println("O arquivo contém a extensão desejada");
    }
    else{
      System.out.println("O arquivo não contém a extensão desejada");  
    }
          
    System.exit(0);
  }
}

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

O arquivo contém a extensão desejada.


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: Delphi
6º lugar: C
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á 21 usuários muito felizes estudando em nosso site.