Dúvidas, comentários e doaçoes: +55 62 9 8513 2505

Planilha de Dimensionamento de Tubulações Hidráulicas Água Fria e Água Quente Completa
Nossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes.

C ::: Dicas & Truques ::: Recursão (Recursividade)

Como calcular o fatorial de um número em C usando recursividade

Quantidade de visualizações: 16602 vezes
O fatorial de um determinado número, representado por n! equivale a multiplicar este número por seus antecessores. Assim, o fatorial de 4 (4!) pode ser calculado da seguinte forma:

4 x 3 x 2 x 1 = 24


Sempre que falamos de recursão, o cálculo de fatorial nos auxilia na exemplificação por ser relativamente fácil de se entender todas as etapas do processo. O código abaixo mostra uma função recursiva em C que calcula o fatorial de qualquer número. Tenha cuidado. Calcular o fatorial de um número maior que 10 pode tornar sua máquina extremamente lenta, além de, muitas vezes, não retornar os resultados esperados.

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

// cabeçalho da função fatorial recursiva
int fatorial(int n);

// função principal do programa
int main(int argc, char *argv[]){
  setlocale(LC_ALL,""); // para acentos do português 
    
  // vamos calcular o fatorial de 5
  int res = fatorial(5);

  // exibe o resultado
  printf("O fatorial de 5 é: %d", res);
  
  printf("\n\n");
  system("PAUSE");	
  return 0;
}

// função recursiva para calcular o fatorial
// de um determinado número
int fatorial(int n){
  if(n == 0){
    return 1;
  }
  else{
    return n * fatorial(n - 1);
  }
}

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

O fatorial de 5 é: 120


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

Programação Orientada a Objetos em PHP - Como criar e usar variáveis estáticas em PHP

Quantidade de visualizações: 10677 vezes
Como já vimos em outras dicas desta seção, uma classe possui propriedades (variáveis) e métodos. Dessa forma, cada instância (cópia ou objeto) desta classe possui suas próprias cópias das variáveis declaradas na classe.

Veja a seguinte declaração de uma classe Produto:

<?
  // classe Produto com duas variáveis privadas e seus
  // correspondentes métodos mutatórios e acessórios
  class Produto{
    private $nome;
    private $preco;

    public function setNome($nome){
      $this->nome = $nome;
    }

    public function getNome(){
      return $this->nome;
    }

    public function setPreco($preco){
      $this->preco = $preco;
    }

    public function getPreco(){
      return $this->preco;
    }
  }
?>

Aqui cada instância da classe Produto terá suas próprias variáveis $nome e $preco.

Há, porém, situações nas quais gostaríamos que uma determinada variável pertencesse à classe e não à cada instância individual. Um bom exemplo disso seria uma variável que registra a quantidade de instâncias que temos de uma classe ou a técnica de se atribuir um identificador único a cada instância da classe.

Variáveis estáticas em PHP podem ser criadas por meio do uso da palavra-chave static. É comum tais variáveis serem declaradas com o modificador public, o que as torna acessíveis fora da classe na qual estas estão declaradas. Veja um exemplo:

<?
  // classe Produto com duas variáveis privadas e seus
  // correspondentes métodos mutatórios e acessórios
  class Produto{
    private $nome;
    private $preco;
    
 
    // uma variável estática que permite contar as instâncias
    // desta classe
    public static $contador = 0;

    // construtor da classe Produto
    function __construct(){
      // vamos incrementar o contador aqui
      self::$contador++;
    }
  }

  // vamos criar duas instâncias da classe Produto
  $p1 = new Produto();
  $p2 = new Produto();

  // vamos obter o valor do contador de instâncias
  echo "Até este momento já criamos " . Produto::$contador .
    " instâncias da classe Produto"; 
?>

Este código possui alguns pontos interessantes e merece uma análise bem detalhada. Perceba que, dentro da classe, uma variável estática é acessada usando-se self e não $this, como fazemos com as variáveis de instâncias. Outra observação interessante é em relação ao acesso da variável estática fora da classe. Aqui nós usamos o nome da classe seguida por um par de dois pontos "::" e não por meio de referências às suas instâncias individuais. Finalmente observe o construtor da classe. A cada instância construída nós acessamos a variável estática e incrementamos seu valor em 1.

É importante observar que variáveis estáticas não podem ser acessadas por meio de referências às instâncias da classe usando o operador "->". Assim, o trecho de código abaixo:

// vamos tentar alterar o valor da variável estática por meio
// de uma referência a uma das instâncias da classe Produto
$p1->contador = 5;

não provoca erros mas, também não traz o resultado esperado.


Java ::: Coleções (Collections) ::: ArrayList

Como testar se um valor está contido em uma ArrayList do Java usando a função contains()

Quantidade de visualizações: 20176 vezes
Em algumas situações nós queremos verificar se um determinado valor está contido em um dos elementos da ArrayList. Para isso nós podemos usar o método contains(), que retorna true se o valor existir e false em caso contrário.

Veja um exemplo de seu uso:

package estudos_java;

import java.util.ArrayList;

public class Estudos{
  public static void main(String[] args){
    // cria uma ArrayList que conterá inteiros
    ArrayList<Integer> valores = new ArrayList<>();
    
    // adiciona itens na lista
    valores.add(34);
    valores.add(12);
    valores.add(8);
    valores.add(23);
    	
    // Verifica se um determinado 
    if(valores.contains(12)){
      System.out.println("O valor foi encontrado.");
    }
    else{
      System.out.println("O valor não foi encontrado.");
    } 

    System.exit(0);
  }
}

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

O valor pesquisado foi encontrado.


Java ::: Pacote java.awt ::: Graphics

Como retornar a cor atual do contexto de desenho usando o método getColor() da classe Graphics do Java - Computação gráfica em Java

Quantidade de visualizações: 8446 vezes
Antes de efetuar qualquer desenho na superfície de um componente, é importante saber qual cor está definida no momento, assim podemos alterá-la se necessário. Para isso podemos usar o método getColor() da classe Graphics. Este método retorna um objeto da classe Color.

Veja um exemplo no qual obtemos a cor usada atualmente para desenhar na superfície de um JLabel:

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

public class Estudos extends JFrame{
  JLabel label;  

  public Estudos() {
    super("Desenhando");
    
    Container c = getContentPane();
    c.setLayout(new BorderLayout());

    // Cria um JLabel
    label = new JLabel();
    c.add(label, BorderLayout.CENTER);

    // Cria um botão
    JButton btn = new 
      JButton("Obter a cor do contexto");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          
          Graphics graphics = label.getGraphics();
          
          // obtém a cor usada para desenhar no
          // contexto de desenho
          Color cor = graphics.getColor();
          JOptionPane.showMessageDialog(null,
            "A cor usada atualmente é " +
            cor.toString());
        }
      }
    );
    
    // Adiciona o botão à janela
    c.add(btn, BorderLayout.SOUTH);

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

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

A cor usada atualmente é java.awt.Color[r=0,g=0,b=0]


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 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
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

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


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


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