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 ::: Gráficos e Cores

Computação gráfica em PHP - Como obter informações sobre a biblioteca GD instalada

Quantidade de visualizações: 8513 vezes
Nesta dica vou mostrar como é possível efetuar uma chamada ao método gd_info() da linguagem PHP para verificar quais recursos da biblioteca GD estão habilitados em nossa instalação do PHP.

Veja o código abaixo:

<?php
  // vamos efetuar uma chamada à função gd_info()
  $info = gd_info();
  // agora percorremos as entradas
  foreach($info as $chave => $valor){
    if($chave != "GD Version"){
      if($valor == true || $valor == false){
        if($valor == true){
          $valor = "Habilitado";
        }
        elseif($valor == false){
          $valor = "Desabilitado";
        }
      }
    }
     
    echo "$chave: $valor<br>";
  }
?>

Ao executarmos este código nós teremos um resultado parecido com:

GD Version: bundled (2.1.0 compatible)
FreeType Support: Habilitado
FreeType Linkage: Habilitado
GIF Read Support: Habilitado
GIF Create Support: Habilitado
JPEG Support: Habilitado
PNG Support: Habilitado
WBMP Support: Habilitado
XPM Support: Habilitado
XBM Support: Habilitado
WebP Support: Habilitado
BMP Support: Habilitado
TGA Read Support: Habilitado
JIS-mapped Japanese Font Support: Desabilitado

É sempre bom fazer este teste antes de usar as funções gráficas da GD no PHP.


Delphi ::: Data Controls (Controles de Dados) ::: TDBGrid

Como criar colunas persistentes o controle TDBGrid do Delphi

Quantidade de visualizações: 12070 vezes
Quando conectamos um TDBGrid a uma fonte de dados TDataSource, automaticamente ocorre a criação de colunas no grid, cada uma correspondendo a um dos campos da tabela para a qual o TDataSet (e suas classes derivadas) está apontando. Estas colunas criadas automaticamente são chamadas de DINÂMICAS, ou contrário das colunas PERSISTENTES.

Porém, na maioria das vezes, nós queremos personalizar a aparência das colunas em tempo de design (o que também pode ser feito em tempo de execução). Queremos alinhar ou alterar os títulos, mudar a fonte e cores, etc. Fazemos isso clicando com o botão direito no controle DBGrid e acessando a opção Columns Editor (ou dando duplo clique na propriedade Columns). Isso fará com que a propriedade State do objeto TDBGridColumns do DBGrid seja mudada para csCustomized, o que indica que o Delphi montará as colunas baseado em nossas configurações e não mais automaticamente de acordo com os nomes dos campos da tabela.

Siga os seguintes passos para criar colunas persistentes para o controle DBGrid:

a) Selecione o DBGrid no formulário;

b) Acesse o editor Columns dando duplo-clique na propriedade Columns no Object Inspector;

Isso bastará para que o list box de Columns exiba as colunas persistentes já existentes. Quando o editor Columns é mostrado pela primeira vez, esta lista estará vazia porque o grid está em seu estado padrão, contendo apenas colunas dinâmicas.

Podemos criar colunas persistentes para todos os campos do dataset de uma só vez, ou podemos criar as colunas persistentes para cada campo individualmente.

Siga os passos abaixo para criar colunas persistentes para todos os campos:

a) Chame o editor Columns e escolha a opção Add All Fields. Note que se o grid não estiver associado a nenhum data source, a opção Add All Fields estará desabilitada. Associe o grid com o data source que estiver conectado a um dataset ativo antes de escolher a apção Add All Fields.

b) Se o grid já possuir colunas persistentes, uma caixa de diálogo perguntará se você quer excluir as colunas existentes ou apenas acrescentar as novas colunas. Se você escolher Yes, todas as colunas persistentes serão removidas e todos os campos do dataset atual serão inseridos como colunas, obedecendo sua ordem no dataset. Neste caso os títulos das colunas serão os nomes dos campos na tabela. Se você escolher No, as colunas persistentes serão mantidas e as novas colunas serão adicionadas.

C) Clique o botão Close para aplicar as colunas persistentes no DBGrid e fechar a caixa de diálogo.

Siga os passos abaixo para criar colunas persistentes individualmente:

a) Escolha o botão Add no editor Columns. A nova columa será selecionada na list box. Esta nova coluna receberá um número sequencial e um nome padrão (por exemplo, 0 - TColumn). Para associar um campo da tabela com esta nova coluna, ajuste sua propriedade FieldName no Object Inspector.

b) Para definir o título para a nova coluna, expanda a propriedade Title no Object Inspector e ajuste sua propriedade Caption.

c) Feche o editor Columns para aplicar as colunas persistentes no grid e fechar a caixa de diálogo.

Se o um DBGrid possui apenas colunas dinâmicas, nós podemos excluí-las em tempo de execução simplesmente mudando o valor da propriedade Columns.State para csCustomized. Veja:

procedure TForm3.Button3Click(Sender: TObject);
begin
  // vamos alterar o valor da propriedade State para csCustomized
  DBGrid1.Columns.State := csCustomized;
end;

Este trecho de código faz com que as colunas dinâmicas sejam excluídas e colunas persistentes sejam criadas para cada um dos campos do dataset ao qual o grid está ligado. Após isso, novas colunas podem ser adicionadas em tempo de execução usando código parecido com:

procedure TForm3.Button3Click(Sender: TObject);
begin
  // vamos alterar o valor da propriedade State para csCustomized
  DBGrid1.Columns.State := csCustomized;

  // vamos adicionar uma nova coluna
  DBGrid1.Columns.Add;
end;

Esta dica foi escrita e testada no Delphi 2009.


C ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como calcular o coeficiente angular de uma reta em C dados dois pontos no plano cartesiano

Quantidade de visualizações: 3871 vezes
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x.

Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano:



Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é:

\[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \]

Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente.

Veja agora o trecho de código na linguagem C que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:

#include <stdio.h>
#include <stdlib.h>
   
int main(int argc, char *argv[]){
  // coordenadas dos dois pontos
  float x1, y1, x2, y2;
  // guarda o coeficiente angular
  float m; 
       
  // x e y do primeiro ponto
  printf("Coordenada x do primeiro ponto: ");
  scanf("%f", &x1);
  printf("Coordenada y do primeiro ponto: ");
  scanf("%f", &y1);
     
  // x e y do segundo ponto
  printf("Coordenada x do segundo ponto: ");
  scanf("%f", &x2);
  printf("Coordenada y do segundo ponto: ");
  scanf("%f", &y2);   
     
  // vamos calcular o coeficiente angular
  m = (y2 - y1) / (x2 - x1);
     
  // mostramos o resultado
  printf("O coeficiente angular é: %f", m);
  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

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

Coordenada x do primeiro ponto: 3
Coordenada y do primeiro ponto: 6
Coordenada x do segundo ponto: 9
Coordenada y do segundo ponto: 10
O coeficiente angular é: 0.666667
Pressione qualquer tecla para continuar...

Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):

#include <stdio.h>
#include <stdlib.h>
   
int main(int argc, char *argv[]){
  // coordenadas dos dois pontos
  float x1, y1, x2, y2;
  // guarda os comprimentos dos catetos oposto e adjascente
  float cateto_oposto, cateto_adjascente;
  // guarda o ângulo tetha (em radianos) e a tangente
  float tetha, tangente; 
       
  // x e y do primeiro ponto
  printf("Coordenada x do primeiro ponto: ");
  scanf("%f", &x1);
  printf("Coordenada y do primeiro ponto: ");
  scanf("%f", &y1);
     
  // x e y do segundo ponto
  printf("Coordenada x do segundo ponto: ");
  scanf("%f", &x2);
  printf("Coordenada y do segundo ponto: ");
  scanf("%f", &y2);   
     
  // vamos obter o comprimento do cateto oposto
  cateto_oposto = y2 - y1;
  // e agora o cateto adjascente
  cateto_adjascente = x2 - x1;
  // vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
  // (em radianos, não se esqueça)
  tetha = atan2(cateto_oposto, cateto_adjascente);
  // e finalmente usamos a tangente desse ângulo para calcular
  // o coeficiente angular
  tangente = tan(tetha);
	  
  // mostramos o resultado
  printf("O coeficiente angular é: %f", tangente);
  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta:

1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0;

2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0;

3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0).

4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe.


PHP ::: Dicas & Truques ::: Data e Hora

Datas e horas em PHP - Como obter o timestamp do primeiro dia do mês e ano informados

Quantidade de visualizações: 1 vezes
Nesta dica eu mostrarei como é possível obter o timestamp do primeiro dia de um determinado mês e ano.

O "Unix timestamp" contém o número de segundos entre a "Unix Epoch" (1 de janeiro de 1970, às 00:00:00 GMT) e o tempo decorrido desde então.

Veja o código PHP completo para o exemplo:

<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
 
<?php
  $mes = 1; // 1 = janeiro;
  $ano = 2021;
  $primeiro_dia = mktime(0, 0, 0, $mes, 1, $ano);
  echo "O timestamp do primeiro dia do mês e ano 
    informado é: " . $primeiro_dia;
?>
 
</body>
</html>

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

O timestamp do primeiro dia do mês e ano informado é: 1609455600


Java ::: Dicas & Truques ::: Strings e Caracteres

Como remover espaços em excesso em uma string Java usando expressões regulares

Quantidade de visualizações: 1 vezes
Em algumas situações nós precisamos remover os espaços em excesso de um texto ou frase. Há várias formas de se realizar esta tarefa, e uma delas é por meio do uso de expressões regulares.

Veja um trecho de código no qual usamos o método replaceAll() da classe Matcher para substituir dois ou mais espaços por apenas um espaço:

package arquivodecodigos;

// Este exemplo mostra como remover todos os espaços
// duplicados de uma string

import java.util.regex.*;

public class Estudos{
  public static void main(String[] args){
    String frase = "Programar   em  Java  e   bom";
    System.out.println("Com espaços em excesso: " + frase);
    
    frase = removerEspacosDuplicados(frase);
    
    System.out.println("Sem espaços em excesso: " + frase);
    
    System.exit(0);
  }
  
  public static String removerEspacosDuplicados(String str){
     String patternStr = "\\s+";
     String replaceStr = " ";
     Pattern pattern = Pattern.compile(patternStr);
     Matcher matcher = pattern.matcher(str);
     return matcher.replaceAll(replaceStr);
  }
}  

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

Com espaços em excesso: Programar   em  Java  é   bom
Sem espaços em excesso: Programar em Java é bom



Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

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 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 Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


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