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.

Você está aqui: Cards de Engenharia Civil - Construção Civil
Card 1 de 28
Fases de uma obra

A Planta de Localização (escala usual 1:200) identifica a posição da obra no terreno. Serve para implantar o projeto.

Filtrar Cards
Use esta opção para filtrar os cards pelos tópicos que mais lhe interessam.
Termos:
Aviso Importante: Nos esforçamos muito para que o conteúdo dos cards e dos testes e conhecimento seja o mais correto possível. No entanto, entendemos que erros podem ocorrer. Caso isso aconteça, pedimos desculpas e estamos à disposição para as devidas correções. Além disso, o conteúdo aqui apresentado é fruto de conhecimento nosso e de pesquisas na internet e livros. Caso você encontre algum conteúdo que não deveria estar aqui, por favor, nos comunique pelos e-mails exibidos nas opções de contato.
Link para compartilhar na Internet ou com seus amigos:

PHP ::: Dicas & Truques ::: Arquivos e Diretórios

Como excluir um arquivo ou imagem em PHP usando a função unlink()

Quantidade de visualizações: 21236 vezes
Esta dica mostra como podemos excluir um arquivo ou uma imagem usando PHP. Para isso vamos usar a função unlink(). Esta função recebe o caminho e nome do arquivo a ser excluído e retorna TRUE se a exclusão foi feita com sucesso e FALSE caso contrário.

Veja o código:

<?php
  // caminho e nome do arquivo (o diretório no qual o arquivo 
  // a ser excluído está deve ter permissão de escrita
  $arquivo = "/home/xxxx/arquivos/dados.txt";
  
  // vamos excluir
  if(unlink($arquivo)){
    echo "Arquivo excluído com sucesso.";
  }
  else{
    echo "Não foi possível excluir o arquivo.";
  }
?>

Se você pretende excluir um diretório e não um arquivo, use a função rmdir().


QGIS ::: PyQGIS API ::: Shapefiles, Camadas Vetoriais, Dados Vetoriais

Como carregar um shapefile no QGIS usando o objeto QgsVectorLayer da PyQGIS API

Quantidade de visualizações: 991 vezes
Nesta dica mostrarei como podemos usar o objeto QgsVectorLayer da PyQGIS API para carregar um arquivo shapefile no QGIS e adicioná-lo como uma nova camada.

O primeiro passo é fornecer a localização do arquivo shapefile (.shp), o nome para a nova camada e um data provider, que nesse caso é ogr.

Depois de obtido o objeto QgsVector nós efetuamos uma chamada à função isValid() para verificar se a camada é válida. Esse procedimento deve ser sempre usado, pois assegura que os dados são válidos antes de continuar com a execução do código.

Para finalizar nós usamos a função addMapLayer() do objeto QgsProject para adicionar a nova camada à coleção de camadas e a exibimos no mapa.

Veja o código PyQGIS completo para o exemplo:

# vamos criar um novo objeto QgsVectorLayer com o local
# do nosso shapefile
camada = QgsVectorLayer("C:\\dados\\GO_Municipios_2022.shp",
  "Municípios Estado de Goiás", "ogr")

# vamos testar se a camada é válida  
if not camada.isValid():
  print("Não foi possível carregar a camada %s" % camada.name())
else:
  # vamos adicionar a camada à relação de camadas  
  QgsProject.instance().addMapLayer(camada)

Ao executarmos esse código PyQGIS no QGIS nós temos como resultado um mapa do Estado de Goiás com os seus 246 municípios.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística

Exercícios Resolvidos de Java - Como converter de decimal para números romanos em Java

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

Escreva um programa Java que pede para o usuário informar um número inteiro decimal e converta-o para o número romano correspondente.

Sua saída deverá ser parecida com:

Informe um número decimal: 2023
O número romano correspondente é: MMXXIII 
Resposta/Solução:

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

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);

    // vamos criar um array com os valores decimais possíveis de
    // cada número romano
    int valoresNumerosRomanos[] = new int[]{1000, 900, 500, 400,
      100, 90, 50, 40, 10, 9, 5, 4, 1};

    // representação dos números romanos
    String numerosRomanos[] = new String[]{"M", "CM", "D", "CD",
      "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};

    // vamos pedir para o usuário informar um número decimal
    System.out.print("Informe um número decimal: ");
    int numero = Integer.parseInt(entrada.nextLine());

    // para guardar o resultado
    String resultado = "";

    // o número é maior que zero?
    if (numero > 0) {
      // percorremos o array de valores decimais dos números romanos
      for(int i = 0;i < valoresNumerosRomanos.length; i++){ 
        // enquanto o número informado for maior que o valor do
        // do número romano atual
        while(numero >= valoresNumerosRomanos[i]){  
          // reduz o número informado
          numero = numero - valoresNumerosRomanos[i];  
          // concatena o número romano e continua o cálculo
          resultado = resultado + numerosRomanos[i];  
        }  
      }
    }
    
    // mostramos o resultado
    if(resultado.isEmpty()){
      System.out.println("O número informado não possui número romano");
    }
    else{
      System.out.println("O número romano correspondente é: " + resultado);
    }
  }
}



HTML5 ::: HTML5 + JavaScript ::: Canvas

Como usar o método arc() do objeto Canvas do HTML5 para desenhar arcos, curvas e círculos

Quantidade de visualizações: 4699 vezes
O método arc() do objeto Canvas do HTML5 nos permite criar figuras tais como arcos, curvas e círculos. Para isso é importante entender os seus parâmetros:

arc(x, y, radius, ang1, ang2, direction);


Os parâmetros x e y indicam as coordenadas do centro do círculo. O parâmetro radius indica o raio do círculo. Os parâmetros ang1 e ang2 indicam o ângulo inicial e o ângulo final. O parâmetro direction indica a direção do desenho. Se o valor true for informado, a direção será anti-horário. Se for false, o desenho será no sentido horário.

É importante observar que os ângulos são medidos em radianos, não em graus. Assim, o ângulo 0 representa a posição 3 horas no relógio. A posição de 9 horas é (1 * PI), 12 horas é (1.5 * PI) e 6 horas é (0.5 * PI). Portanto, se você quiser desenhar um círculo completo, deverá sair do ângulo 0 e ir até (2 * PI).

Veja um trecho de código que desenha um arco equivalente a um quarto de uma pizza, ou seja, 25%, saindo do ângulo 90º (em graus) e indo até 180º (graus):

<html>
<head>
  <meta charset="utf-8">
  <title>Estudos HTML5</title>
</head>
<body>

<Canvas id="canvas1" width="500" height="350"></Canvas>
 
<script type="text/javascript">
  // obtemos uma referência ao elemento Canvas  
  var canvas = document.getElementById("canvas1");
  // obtemos o contexto de desenho
  var contexto = canvas.getContext("2d");
     
  // vamos desenhar um arco sem preenchimento com raio de 80
  contexto.beginPath(); // início um novo caminho
  // o arco começa no x = 100, y = 100, começa no ângulo 90 (em graus)
  // e vai até o ânculo 180 (graus)
  // as medidas na função arc() são em radianos, não em graus
  contexto.arc(100, 100, 80, Math.PI, 1.5 * Math.PI, false);
  contexto.lineWidth = 2; // largura da linha
  contexto.strokeStyle = '#990000'; // cor da linha
 
  contexto.stroke(); // realiza o desenho    
</script>

</body>
</html>

Execute este código e veja que o arco realmente foi desenhado. Seu resultado deverá ser parecido com:



No entanto, para parecer um pedação de pizza, ou seja, o ponto de partida para um gráfico de pizza, é preciso que tenhamos duas linhas ligado esse arco ao centro do círculo. Veja a modificação que fiz:

<html>
<head>
  <meta charset="utf-8">
  <title>Estudos HTML5</title>
</head>
<body>

<Canvas id="canvas1" width="500" height="350"></Canvas>
 
<script type="text/javascript">
  // obtemos uma referência ao elemento Canvas  
  var canvas = document.getElementById("canvas1");
  // obtemos o contexto de desenho
  var contexto = canvas.getContext("2d");
     
  // vamos desenhar um arco sem preenchimento com raio de 80
  contexto.beginPath(); // início um novo caminho
   
  // primeiro movemos a caneta de desenho para o centro do círculo
  contexto.moveTo(100, 100);
 
  // o arco começa no x = 100, y = 100, começa no ângulo 90 (em graus)
  // e vai até o ânculo 180 (graus)
  // as medidas na função arc() são em radianos, não em graus
  contexto.arc(100, 100, 80, Math.PI, 1.5 * Math.PI, false);
  contexto.lineWidth = 2; // largura da linha
  contexto.strokeStyle = '#990000'; // cor da linha
 
  // agora desenhamos uma linha de volta para o arco
  contexto.lineTo(100, 100);
 
  contexto.stroke(); // realiza o desenho    
</script>

</body>
</html>

Execute novamente e veja que agora o efeito ficou bem melhor. Seu resultado deverá ser parecido com:



Para finalizar, vamos colorir o pedação de pizza. Veja a nova versão (com o código completo):

<!doctype html>
<html>
<head>
  <title>O objeto Canvas do HTML5</title>
</head>
 
<body>
 
<Canvas id="canvas1" width="500" height="350"></Canvas>
 
<script type="text/javascript">
  // obtemos uma referência ao elemento Canvas  
  var canvas = document.getElementById("canvas1");
  // obtemos o contexto de desenho
  var contexto = canvas.getContext("2d");
     
  // vamos desenhar um arco sem preenchimento com raio de 80
  contexto.beginPath(); // início um novo caminho
   
  // primeiro movemos a caneta de desenho para o centro do círculo
  contexto.moveTo(100, 100);
 
  // o arco começa no x = 100, y = 100, começa no ângulo 90 (em graus)
  // e vai até o ânculo 180 (graus)
  // as medidas na função arc() são em radianos, não em graus
  contexto.arc(100, 100, 80, Math.PI, 1.5 * Math.PI, false);
  contexto.lineWidth = 2; // largura da linha
  contexto.strokeStyle = '#990000'; // cor da linha
 
  // agora desenhamos uma linha de volta para o arco
  contexto.lineTo(100, 100);
 
  // vamos preencher o gráfico
  contexto.fillStyle = "#CCCCCC"; // cor do preenchimento
  contexto.fill(); // preenche de fato
 
  contexto.stroke(); // realiza o desenho    
</script>
 
</body>
</html>

Agora o resultado será:




PHP ::: Boletos Bancários, Arquivos de Remessa e Retornos do Banco ::: Caixa Econômica Federal - Banco 104

Boleto Bancário PHP - Como calcular o Dígito Verificador do Nosso Número (Módulo 11) - Boleto Caixa Econômica

Quantidade de visualizações: 3244 vezes
Nesta dica mostrarei, passo-a-passo, como calcular o Dígito Verificador do Nosso Número para o boleto e arquivos de remessa da Caixa Econômica Federal (Banco 104).

O Nosso Número é o número de identificação do título no Banco. Este número deve ser único nos seus sistemas, pois, sua combinação com o código do cedente o torno único também no sistema bancário. Além disso, é o Nosso Número que permite ao Banco e a empresa identificar os dados da
cobrança que deram origem ao bloqueto.

Na Especificação do Código de Barras para Bloquetos de Cobrança Sem Registro e Registrada no SIGCB (67.119 v005 micro), o Nosso Número é composto de 17 posições, sendo as 02 posições iniciais para identificar a Carteira e as 15 posições restantes são para livre utilização pelo Cedente.
Seu formato é XYNNNNNNNNNNNNNNN-D, onde:
a) X = Modalidade/Carteira de Cobrança (1-Registrada/2-Sem Registro);
b) Y = Emissão do bloqueto (4-Cedente);
c) NNNNNNNNNNNNNNN = Nosso Número (15 posições livres do Cedente);
d) D = Dígito Verificador do Nosso Número calculado através do Modulo 11, conforme código que mostrarei a seguir. Nos boletos e arquivos de remessa da Caixa, o Dígito Verificador do Nosso Número admite 0 (zero), diferentemente do DV Geral do Código de Barras (que também mostro como calcular em dicas dessa seção).

O cálculo que mostrarei a seguir é baseado no Módulo 11 e está de acordo com as instruções do Manual de Leiaute de Arquivo Eletrônico Padrão CNAB 240 - Cobrança Bancária Caixa - SIGCB - Versão 67.118 v024 micro e Especificação do Código de Barras para Bloquetos de Cobrança Sem Registro e Registrada no SIGCB (67.119 v005 micro). Tenha certeza de verificar sua versão do manual antes de usar o código apresentado.

Dito isso, veja o código PHP completo para uma função que recebe o Nosso Número e retorna seu dígito verificador:

<?php
  // função que recebe o nosso número
  // e retorna o seu dígito verificador
  function dvNossoNumero($nossoNumero){
    // o nosso número possui mais que 17 dígitos?
    if(strlen($nossoNumero) > 17){
      die("O Nosso Número não pode ter mais que 17 dígitos.");	
    }
	
    // agora vamos definir os índices de multiplicação
    $indices = "29876543298765432";
    // e aqui a soma da multiplicação coluna por coluna
    $soma = 0;
     
    // fazemos a multiplicação coluna por coluna agora
    for($i = 0; $i < strlen($nossoNumero); $i++){
      $soma = $soma + ((int)($nossoNumero[$i])) * 
        ((int)($indices[$i])); 
    }
    
    // obtemos o resto da divisão da soma por onze
    $resto = $soma % 11;
     
    // subtraímos onze pelo resto da divisão
    $digito = 11 - $resto;  	
	 
    // atenção: Se o resultado da subtração for
    // maior que 9 (nove), o dígito será 0 (zero)
    if($digito > 9){
      $digito = 0;    
    }
     
    return $digito;
  }
  
  // vamos calcular o Dígito Verificador do 
  // Nosso Número
  $carteira = "1"; //  
  $emissao = "4"; // cedente
  $nossoNumero = "19";
  // preenche com zeros até completar 15 posições
  $nossoNumero = sprintf("%015d", $nossoNumero);
  $nossoNumeroCompleto = $carteira . $emissao . $nossoNumero;
  $digito = dvNossoNumero($nossoNumeroCompleto);
  echo "O dígito verificador para o nosso número " . 
    $nossoNumeroCompleto . " é: " . $digito;
?>

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

O dígito verificador para o nosso número 14000000000028288 é: 5


Desafios, Exercícios e Algoritmos Resolvidos de PHP

Veja mais Dicas e truques de PHP

Dicas e truques de outras linguagens

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