Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser. Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 19,90
C ::: C para Engenharia ::: Física - Mecânica

Como usar a Equação de Torricelli para calcular a velocidade da queda livre dada a altura (e a aceleração da gravidade) usando a linguagem C

Quantidade de visualizações: 2463 vezes
A Equação de Torricelli pode ser usada quando temos a altura na qual um corpo (objeto) foi abandonado e gostaríamos de calcular sua velocidade de queda livre em m/s ou km/h imediatamente antes de tal corpo tocar o chão.

Para isso usaremos a seguinte fórmula:

\[ v^2 = \text{2} \cdot \text{g} \cdot \text{H} \]

Onde:

g ? aceleração da gravidade (m/s2)

H ? altura em metros na qual o corpo é abandonado.

Vamos ver um exemplo? Veja o seguinte enunciado:

1) Uma bola de basquete é abandonada a uma altura de 5 metros em relação ao chão. Se essa bola estiver movendo-se em queda livre, qual será a velocidade da bola, em km/h, imediatamente antes de tocar o chão?

Note que o exercício pede a velocidade em km/h, e não m/s. Assim, veja o código C completo para o cálculo:

#include <stdio.h>
#include <stdlib.h>
#include <math.h> 
     
int main(int argc, char *argv[]){
  // gravidade terrestre em m/s2
  float gravidade = 9.80665;
  // altura da queda (em metros)
  int altura = 5; // em metros
  // velocidade da queda em metros por segundo
  float velocidade_m_s = sqrt(2 * gravidade * altura);
  // velocidade da queda em km/h
  float velocidade_km_h = velocidade_m_s * 3.6;
  
  // mostramos o resultado
  printf("A velocidade da queda livre em m/s é: %fm/s",
    velocidade_m_s);
  printf("\nA velocidade da queda livre em km/h é: %fkm/h",
    velocidade_km_h);
	  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

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

A velocidade da queda livre em m/s é: 9.902853m/s
A velocidade da queda livre em km/h é: 35.650272km/h

Note que definimos, no código, a aceleração da gravidade terreste como 9.80665m/s2.


Java ::: Estruturas de Dados ::: Árvore Binária e Árvore Binária de Busca

Estruturas de dados em Java - Como obter a quantidade de nós em uma árvore binária usando Java

Quantidade de visualizações: 3011 vezes
Em exemplos dessa seção nós vimos como criar árvores binárias e árvores binárias de busca em Java e como pesquisar ou fazer a sua travessia, visitando cada um dos nós. Nesta dica mostrarei como contar os nós da árvore usando um método recursivo. Veja:

// método que permite obter a quantidade de nós na árvore
int quantNosArvore(){
  // chama a versão recursiva
  return quantNosArvore(raiz);
}
  
int quantNosArvore(No no){
  if(no == null){ // condição de parada
    return 0;
  }
  else{
    return (quantNosArvore(no.getEsquerdo()) + 
      quantNosArvore(no.getDireito()) + 1);
  }
}

Este método faz parte da classe ArvoreBinariaBusca.java. Veja agora como chamá-lo a partir da classe principal, ou seja, a classe de teste:

package arvore_binaria;

import java.util.Scanner;

public class ArvoreBinariaTeste {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);  
       
    // vamos criar um novo objeto da classe ArvoreBinariaBusca
    ArvoreBinariaBusca arvore = new ArvoreBinariaBusca();
    
    // vamos inserir 5 valores na árvore
    for(int i = 0; i < 5; i++){
      System.out.print("Informe um valor inteiro: ");
      int valor = Integer.parseInt(entrada.nextLine());
       
      // vamos inserir o nó e verificar o sucesso da operação
      if(!arvore.inserir(valor)){
        System.out.println("Não foi possível inserir." +
          " Um elemento já contém este valor.");  
      }
    }
     
    // vamos exibir a quantidade de nós na árvore
    System.out.println("\nA árvore possui: " + 
      arvore.quantNosArvore() + " nós.\n");
     
    System.out.println("\n");
  }
}

Ao executar este código teremos o seguinte resultado:

Informe um valor inteiro: 5
Informe um valor inteiro: 2
Informe um valor inteiro: 8
Informe um valor inteiro: 7
Informe um valor inteiro: 31

A árvore possui: 5 nós.



C# ::: Dicas & Truques ::: Arquivos e Diretórios

Como excluir um diretório em C# usando a função Delete() da classe DirectoryInfo

Quantidade de visualizações: 267 vezes
O método Delete() da classe DirectoryInfo do C# é muito útil quando precisamos excluir um diretório. Esta função é do tipo void, ou seja, não retorna nada.

Veja um código completo demonstrando o seu uso:

using System;
using System.IO;

namespace Estudos {
  class Principal {
    static void Main(string[] args) {
      // vamos criar uma nova instância da classe DirectoryInfo
      DirectoryInfo dir = new DirectoryInfo(@"C:\estudos_csharp\imagens");

      // vamos tentar excluir o diretório
      try {
        dir.Delete();
        Console.WriteLine("Diretório excluído com sucesso.");
      }
      catch (Exception e) {
        Console.WriteLine("Não foi possível excluir o diretório: {0}", e.ToString());
      }
    
      Console.WriteLine("\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Diretório excluído com sucesso.

Se o diretório a ser excluido não estiver vazio, a chamada ao método System.IO.DirectoryInfo.Delete() poderá gerar o seguinte erro:

Não foi possível excluir o diretório: System.IO.IOException: A pasta não está vazia. : 'C:\estudos_csharp\imagens'
at System.IO.FileSystem.RemoveDirectoryInternal(String fullPath, Boolean topLevel, Boolean allowDirectoryNotEmpty)
at System.IO.FileSystem.RemoveDirectory(String fullPath, Boolean recursive)
at System.IO.DirectoryInfo.Delete()
at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 12


C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de C - Como retornar o primeiro elemento de um vetor em C

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

Dado o vetor:

[9, 5, 3, 2, 4, 8]

Escreva um programa C que mostra como acessar e retornar o primeiro elemento de um vetor (array) em C.

Sua saída deverá ser parecida com:

O primeiro elemento do array é: 9 
Resposta/Solução:

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

#include <stdio.h>
#include <stdlib.h>

// função principal do programa
int main(int argc, char *argv[]){
  // vamos criar um array de inteiros
  int valores[] = {9, 5, 3, 2, 4, 8};
    
  // agora vamos retornar o primeiro elemento do vetor
  int primeiro = valores[0];
    
  // e mostramos o resultado
  printf("O primeiro elemento do array é: %d", primeiro);
  
  printf("\n\n");
  system("PAUSE");
  return 0;
}



JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como somar os elementos de um array em JavaScript usando a função reduce()

Quantidade de visualizações: 578 vezes
Nesta dica mostrarei como podemos usar a função reduce() do JavaScript para somar todos os elementos de um vetor de inteiros. Lembre-se de que a função reduce() foi introduzida no ECMAScript5 (ES5), também chamado de JavaScript 2009.

Veja a página HTML completa para o exemplo:

<!doctype html>
<html>
<head>
  <title>Estudos JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos criar um vetor de inteiros
  var valores = new Array(7, 2, 1, 3, 5);
  document.write("Valores do array: " + valores 
    + "<br>");
	
  // agora vamos usar a função para somar
  // os elementos do vetor
  var res = valores.reduce((soma, valor) => soma 
    + valor, 0);
  document.write("A soma dos elementos é: " + res); 	
</script>
  
</body>
</html>

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

Valores do array: 7,2,1,3,5
A soma dos elementos é: 18

Neste exemplo eu coloquei a função que será executada para cada elemento do array diretamente dentro do corpo da função reduce(). Podemos também colocar esta função do lado de fora. Veja:

<script type="text/javascript">
  // função que será chamada pela função reduce()
  function somar_elementos(soma, valor) {
    return soma + valor;
  }
  
  // vamos criar um vetor de inteiros
  var valores = new Array(7, 2, 1, 3, 5);
  document.write("Valores do array: " + valores 
    + "<br>");
	
  // agora vamos usar a função para somar
  // os elementos do vetor
  var res = valores.reduce(somar_elementos, 0);
  document.write("A soma dos elementos é: " + res); 	
</script>



C# ::: Windows Forms ::: DataGridView

Como retornar a quantidade de colunas em um DataGridView do C# Windows Forms

Quantidade de visualizações: 10027 vezes
A quantidade de colunas em um DataGridView pode ser obtida por meio da propriedade ColumnCount. Veja:

private void button2_Click(object sender, EventArgs e){
  // vamos adicionar três colunas no DataGridView
  dataGridView1.Columns.Add("cidade", "Cidade");
  dataGridView1.Columns.Add("estado", "Estado");
  dataGridView1.Columns.Add("populacao", "População");

  // vamos adicionar três linhas
  dataGridView1.Rows.Add("Goiânia", "GO", "3.453,39");
  dataGridView1.Rows.Add("Cuiabá", "MT", "1.876,12");
  dataGridView1.Rows.Add("Curitiba", "PR", "5.346,98");

  // vamos obter a quantidade de colunas no DataGridView
  int quant_colunas = dataGridView1.ColumnCount;

  // exibe o resultado
  MessageBox.Show("O DataGridView contém " + 
    quant_colunas + " colunas");
}

É possível também usar a propriedade ColumnCount para definir a quantidade de colunas em um DataGridView:

dataGridView1.ColumnCount = 6;

Há algumas considerações importantes sobre a propriedade ColumnCount:

1) Se seu valor for definido como 0, todas as colunas do DataGridView serão removidas;
2) Se o novo valor for menor que o valor atual, as colunas excedentes serão removidas no final da coleção Columns;
3) Se o novo valor for maior que o valor atual, as novas colunas serão adicionadas no final da coleção Columns;
4) Se tentarmos alterar o valor desta propriedade após a definição da propriedade DataSource, uma exceção InvalidOperationException será lançada.


C# ::: Coleções (Collections) ::: ArrayList

Como criar um ArrayList de inteiros no C# e percorrer os elementos usando o laço foreach

Quantidade de visualizações: 12998 vezes
Nesta dica mostrarei um código C# direcionado aos programadores que querem aprender a usar a classe ArrayList em seus programas. Trata-se da criação de uma ArrayList de números inteiros.

Depois de criada a lista nós vamos adicionar alguns elementos e depois vamos usar o laço foreach para exibir os valores adicionados.

Veja o código completo:

using System;
using System.Collections;

namespace Estudos {
  class Principal {
    static void Main(string[] args) {
      // Cria o ArrayList
      ArrayList lista = new ArrayList();

      // Adiciona 5 inteiros
      lista.Add(30);
      lista.Add(2);
      lista.Add(98);
      lista.Add(1);
      lista.Add(7);

      // Percorre os elementos da ArrayList
      Console.WriteLine("Os elementos no ArrayList são:\n");
      foreach (int valor in lista) {
        Console.Write("{0} ", valor);
      }

      Console.WriteLine("\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Os elementos no ArrayList são:

30 2 98 1 7


LISP ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço loop para contar de 1 até 10 em Lisp

Quantidade de visualizações: 745 vezes
A estrutura de repetição loop da linguagem Common Lisp é o laço mais simples fornecido pela linguagem. Este laço nos permite repetir uma ou mais instruções de código repetidamente, até que o comando return seja encontrado, o que faz com que o laço seja interrompido.

Veja no trecho de código abaixo como podemos usar o laço loop da Common Lisp para contar e exibir os valores de 1 até 10:

(
  ; vamos declarar a variável que vamos usar
  let (numero)	
  ; vamos inicializar a variável com o valor 1
  (setq numero 1)
  ; agora iniciamos o laço
  (loop 
    ; escrevemos o valor da variável
    (write numero)
    ; aumentamos o valor da variável em 1
    (setq numero (+ numero 1))
    ; provocamos uma quebra de linha 
    (terpri)
    ; e fazemos o teste da continuidade
    (when (> numero 10) (return))
  )
)

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

1
2
3
4
5
6
7
8
9
10

Veja que usamos a macro when para testar o ponto de parada do laço. Note ainda o uso da função terpri da Common Lisp para provocar uma quebra de linha na saída do programa.


Java ::: Java para Engenharia ::: Eletricidade, Circuitos Elétricos e Eletrônicos

Como calcular corrente, voltagem, resistência e potência em um circuito série de corrente contínua usando Java

Quantidade de visualizações: 2040 vezes
Como calcular corrente, voltagem, resistência e potência em um círcuito série de corrente contínua usando Java

Nesta dica mostrarei como é possível usar operações básicas da linguagem Java para calcular a corrente, voltagem, resistência e potência em um circuito série de corrente contínua.

É conhecido como um circuito série um circuito composto exclusivamente por componentes elétricos ou eletrônicos conectados em série (de conexão em série, que é o mesmo que associação em série ou ligação em série). A associação em série é uma das formas básicas de se conectarem componentes elétricos ou eletrônicos. A nomeação descreve o método como os componentes são conectados.

Vanos começar analisando a seguinte imagem:



Esta imagem foi extraída do Simulador do PHET, no endereço https://phet.colorado.edu. Note que temos uma fonte de alimentação 90V, e três resistores (com resistências de 10&#937;, 20&#937; e 30&#937;).

Vamos começar relembrando os aspectos importantes dos circuitos em série:

1) A corrente elétrica I (medida em ampères (A), ou coulombs por segundo) é comum a todos os elementos do circuito.

2) A tensão elétrica V, (medida em volts (V), ou joules por coulomb) é dividida entre as cargas, ou seja, a soma das tensões nas cargas deve ser igual à tensão da fonte de alimentação.

3) A resistência elétrica R (medida em ohms (&#937;)) total do circuito é igual à soma de todas as resistências das cargas.

4) A potência total P (medida em watts (W)) é igual à soma das potências das cargas que compõem o circuito.

Vamos escrever um pouco de código então? Veja nosso primeiro código Java que calcula a corrente total, a tensão total, a resistência total e a potência total do circuito em série mostrado na imagem:

package estudos_java;

public class Estudos{
  public static void main(String[] args){
    // Tensão total do circuito em série
    double eTotal = 90.0;
 
    // Resitência total
    double resist1 = 10.0;
    double resist2 = 20.0;
    double resist3 = 30.0;
    double rTotal = resist1 + resist2 + resist3;
    
    // Corrente elétrica total
    double iTotal = eTotal / rTotal;
    
    // Potência elétrica total
    double pTotal = eTotal * iTotal; 
    
    // mostra os valores
    System.out.println("Tensão total: " + eTotal);
    System.out.println("Resistência total: " + rTotal);
    System.out.println("Corrente total: " + iTotal);
    System.out.println("Potência total: " + pTotal);
    
    System.exit(0);
  }
} 

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

Tensão total: 90.0
Resistência total: 60.0
Corrente total: 1.5
Potência total: 135.0

Pronto! Agora que já sabemos o valor da corrente elétrica, e sabemos que a corrente é comum a todos os elementos do circuito em série, podemos calcular a tensão individual dos componentes. Assim, veja um trecho de código Java que calcula a tensão elétrica nos três resistores (lembre-se: tensão é o produto da corrente pela resistência):

package estudos_java;

public class Estudos{
  public static void main(String[] args){
    // Tensão total do circuito em série
    double eTotal = 90.0;
 
    // Resitência total
    double resist1 = 10.0;
    double resist2 = 20.0;
    double resist3 = 30.0;
    double rTotal = resist1 + resist2 + resist3;
    
    // Corrente elétrica total
    double iTotal = eTotal / rTotal;
    
    // Potência elétrica total
    double pTotal = eTotal * iTotal; 
    
    // mostra os valores
    System.out.println("Tensão total: " + eTotal);
    System.out.println("Resistência total: " + rTotal);
    System.out.println("Corrente total: " + iTotal);
    System.out.println("Potência total: " + pTotal);
    
    // mostra as tensões nos resistores
    System.out.println("\nTensão nos resistores individuais:");
    double e1 = resist1 * iTotal;
    double e2 = resist2 * iTotal;
    double e3 = resist3 * iTotal;
    
    System.out.println("Tensão no Resistor 1: " + e1 + "V");
    System.out.println("Tensão no Resistor 2: " + e2 + "V");
    System.out.println("Tensão no Resistor 3: " + e3 + "V");
    
    System.exit(0);
  }
} 

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

Tensão total: 90.0
Resistência total: 60.0
Corrente total: 1.5
Potência total: 135.0

Tensão nos resistores individuais:
Tensão no Resistor 1: 15.0V
Tensão no Resistor 2: 30.0V
Tensão no Resistor 3: 45.0V

Para finalizar, vamos calcular a potência dissipada em cada um dos resistores de forma individual. Observe que a potência é o produto da tensão pela corrente (P = E.I). Eis o código:

package estudos_java;

public class Estudos{
  public static void main(String[] args){
    // Tensão total do circuito em série
    double eTotal = 90.0;
 
    // Resitência total
    double resist1 = 10.0;
    double resist2 = 20.0;
    double resist3 = 30.0;
    double rTotal = resist1 + resist2 + resist3;
    
    // Corrente elétrica total
    double iTotal = eTotal / rTotal;
    
    // Potência elétrica total
    double pTotal = eTotal * iTotal; 
    
    // mostra os valores
    System.out.println("Tensão total: " + eTotal);
    System.out.println("Resistência total: " + rTotal);
    System.out.println("Corrente total: " + iTotal);
    System.out.println("Potência total: " + pTotal);
    
    // mostra as tensões nos resistores
    System.out.println("\nTensão nos resistores individuais:");
    double e1 = resist1 * iTotal;
    double e2 = resist2 * iTotal;
    double e3 = resist3 * iTotal;
    
    System.out.println("Tensão no Resistor 1: " + e1 + "V");
    System.out.println("Tensão no Resistor 2: " + e2 + "V");
    System.out.println("Tensão no Resistor 3: " + e3 + "V");
    
    // mostra as potências dissapadas nos resistores
    System.out.println("\nPotência dissipada nos resistores individuais:");
    double p1 = e1 * iTotal; // Potência = Tensão x Corrente
    double p2 = e2 * iTotal;
    double p3 = e3 * iTotal;
    
    System.out.println("Potência no Resistor 1: " + p1 + "W");
    System.out.println("Potência no Resistor 2: " + p2 + "W");
    System.out.println("Potência no Resistor 3: " + p3 + "W");
    
    System.exit(0);
  }
} 

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

Tensão total: 90.0
Resistência total: 60.0
Corrente total: 1.5
Potência total: 135.0

Tensão nos resistores individuais:
Tensão no Resistor 1: 15.0V
Tensão no Resistor 2: 30.0V
Tensão no Resistor 3: 45.0V

Potência dissipada nos resistores individuais:
Potência no Resistor 1: 22.5W
Potência no Resistor 2: 45.0W
Potência no Resistor 3: 67.5W


Java ::: Dicas & Truques ::: Imagens e Processamento de Imagens

Como carregar uma imagem em um BufferedImage do Java usando o método read() da classe ImageIO

Quantidade de visualizações: 12355 vezes
O método read() da classe ImageIO possui várias assinaturas. Entre elas há uma que aceita um objeto File representando o caminho e nome da imagem a ser carregada. Este método retorna um BufferedImage e atira uma exceção IOException se a imagem não puder ser carregada.

O exemplo abaixo mostra como carregar uma imagem JPG em um BufferedImage usando ImageIO.read():

import java.awt.*;
import java.io.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import javax.imageio.*;

public class Estudos extends JFrame{
  private BufferedImage imagem;
  
  public Estudos() {
    super("Estudos Java");
    
    Container c = getContentPane();
    c.setLayout(new FlowLayout());
	
    JButton btn = new JButton("Carregar Imagem");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          imagem = null;
          
          try{
            imagem = ImageIO.read(
              new File("imagens/fundo.jpg"));
          }
          catch(IOException exc){
            JOptionPane.showMessageDialog(null, 
              "Erro ao carregar a imagem: " + 
              exc.getMessage());
          }

          if(imagem != null)
            JOptionPane.showMessageDialog(null, 
              "Imagem carregada com sucesso.");
        }
      }
    );

    c.add(btn);
    	
    setSize(400, 300);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}


Carregar Publicações Anteriores


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

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á 17 usuários muito felizes estudando em nosso site.