Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD e VBA
PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
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
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:

Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais

Como calcular a armadura mínima de tração de uma viga de concreto armado usando Python - Python para Engenharia Civil

Quantidade de visualizações: 495 vezes
De acordo com a ABNT NBR 6118 (Projeto de estruturas de concreto armado), a armadura de tração, em elementos estruturais armados ou protendidos deve ser determinada pelo dimensionamento da seção a um determinado momento fletor mínimo, respeitada a taxa mínima absoluta ρmin de 0,15%.

Dessa forma, a área de aço mínima levando em consideração a taxa mínima absoluta ρmin de 0,15% de armadura longitudinal para as vigas de concreto armado usando concreto com FCK até 30 Mpa é calculada pela seguinte fórmula:

\[A_\text{s,min} = \frac{0,15}{100} \cdot A_\text{c}\]
Onde:

As,min é a área da armadura mínima de aço em cm2;

Ac é a área de concreto em cm2, ou seja, a largura bw da viga multiplicada por sua altura h (ambas em cm).

Veja agora o código Python completo que lê a largura, a altura da viga, o FCK do concreto (no código eu tratei FCK até 50 Mpa) e mostra a área mínima da armadura de aço e sugestões das barras a serem usadas:

# vamos importar o módulo Math
import math

# função usada para calcular e retornar a quantidade
# de barras de aço de acordo com a área de aço (considerando
# aço CA-50)
def quant_barras(area_aco):
  # barras de 6.3mm (o mínimo aceitável pela NBR 6118)
  quantidade_6_3 = math.ceil(area_aco / 0.31)
  quantidade_8 = math.ceil(area_aco / 0.5) # barras de 8mm
  quantidade_10 = math.ceil(area_aco / 0.785) # barras de 10mm
  quantidade_12_5 = math.ceil(area_aco / 1.22) # barras de 12.5mm

  # mostra as sugestões de quantidade de barras
  if (quantidade_6_3) > 1:
    print("{0} barras de 6.3 mm".format(quantidade_6_3))
  if (quantidade_8) > 1:
    print("{0} barras de 8 mm".format(quantidade_8))
  if (quantidade_10) > 1:
    print("{0} barras de 10 mm".format(quantidade_10))  
  if (quantidade_12_5) > 1:
    print("{0} barras de 12.5 mm".format(quantidade_12_5))

# função principal do programa Python
def main():
  # vamos pedir para o usuário informar a altura da viga
  altura = float(input("Informe a altura h da viga em cm: "))
  
  # vamos pedir para o usuário informar a largura da viga
  largura = float(input("Informe a largura bw da viga em cm: "))
  
  # vamos pedir para o usuário informar o FCK do concreto
  fck = float(input("Informe o FCK do concreto em Mpa: "))
  
  # vamos calcular o pmin de acordo com o FCK informado
  if (fck <= 30):
    pmin = 0.15
  elif (fck == 35):
    pmin = 0.164
  elif (fck == 40):
    pmin = 0.179
  elif (fck == 45):
    pmin = 0.194
  else:
    pmin = 0.208    
  
  # já temos o pmin, vamos calcular a área mínima de aço
  area_concreto = largura * altura
  as_min = (pmin / 100.0) * area_concreto
  
  # vamos mostrar os resultados 
  print("\nA área da armadura mínima longitudinal é: {0} cm2".format(
    round(as_min, 5)))
  # mostra as sugestões de barras
  print("\nSugestões de barras:\n-------------------------")
  quant_barras(as_min)

if __name__ == "__main__":
  main()

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

Informe a altura h da viga em cm: 50
Informe a largura bw da viga em cm: 20
Informe o FCK do concreto em Mpa: 30

A área da armadura mínima é: 1.5 cm2

Sugestões de barras:
-------------------------
5 barras de 6.3 mm
3 barras de 8 mm
2 barras de 10 mm
2 barras de 12.5 mm


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

Como testar se todos os elementos de um array satisfazem uma condição em JavaScript usando a função every()

Quantidade de visualizações: 1706 vezes
Em algumas situações nós gostaríamos de testar todos os elementos de um vetor e verificar se todos eles passam em um determinado teste. Para isso podemos usar a função every(), adicionada à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5).

Este método nos permite fornecer uma função de callback que será chamada para cada um dos elementos do vetor. E o retorno do método every() é um valor true se todos os elementos passarem no teste e false em caso contrário.

Veja um exemplo no qual testamos se TODOS os elementos de um vetor são maiores que 10:

<script type="text/javascript">
  function testarTodos(valor, indice, vetor){
    if(valor > 10){
      return true;
    }
  }  

  var valores = new Array(21, 50, 30, 70, 12, 3);
  // vamos verificar se TODOS os valores são
  // maiores que 10
  var res = valores.every(testarTodos);  
  window.alert("Todos passaram no teste: " + res);
</script>

Aqui o resultado será false, pois o valor 3 não passou no teste. É importante observar que, assim que a função de callback retorna false pela primeira vez, o método every() já abandona sua execução.

Uma função passada para o método every() pode conter os seguintes argumentos (nessa mesma ordem):

a) O valor do item;
b) O índice do item (opcional);
c) O vetor a partir do qual o método every() está sendo chamado (opcional).

Como última observação, o método every() não modifica o array original.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição

Exercícios Resolvidos de Java - Como converter de binário para decimal em Java usando o laço for

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

Escreva um programa Java que usa o laço for para converter um número binário (como uma String) em sua representação decimal (como um int). Peça ao usuário para informar um número binário e mostre o mesmo em decimal (como um int). Sua solução deve obrigatoriamente usar o laço for.

Sua saída deverá ser parecida com:

Informe um número binário: 1100
A representação decimal do valor binário 1100 é 12
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) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
       
    // vamos ler o número binário (como uma String)
    System.out.print("Informe um número binário: ");
    String bin = entrada.nextLine();
    int decimal = 0; // guarda a representação decimal
     
    // vamos percorrer todos os dígitos do número binário começando do início
    for(int i = 0, exp = bin.length() - 1; i < bin.length(); i++, exp--){
      // converte o caractere atual para inteiro
      int temp = Character.digit(bin.charAt(i), 10);  
      decimal = decimal + (temp * (int)Math.pow(2, exp));
    }
     
    System.out.println("A representação decimal do valor binário " 
      + bin + " é " + decimal);
  }
}



HTML5 ::: Aplicativos Completos ::: Programas de desenho, edição e visualização de imagens e fotos

Como criar um programa de desenho simples usando o objeto Canvas do HTML5

Quantidade de visualizações: 7673 vezes
Revisando alguns códigos que desenvolvi para clientes ao longo desses anos, encontrei um exemplo de um programa de desenho bem simples demonstrando as possibilidades gráficas do elemento Canvas do HTML. Este código foi escrito há uns dois anos e resolvi compartilhar com todos, para que vocês possam aprimorá-lo e acrescentar novas idéias, afinal, o HTML5 está mais atual do que nunca.

Veja o resultado no navegador:



Eu o escrevi de forma bem simples, sem usar jQuery ou qualquer outro framework, apenas JavaScript raiz mesmo, de forma que até os estudantes mais iniciantes não terão dificuldade de entender. Veja a listagem completa e com comentários:

<html>
<head>
<title>Desenhando no canvas do HTML5</title>
</head>

<body style="padding: 15px">

<b>Clique e arraste para desenhar</b><br><br>

<canvas id="quadro" style="border: 1px solid #666" 
  width="600" height="350"></canvas>

<br><br><button onClick="limpar()">Limpar</button>

<script type="text/javascript">
  // obtém uma referência ao canvas
  var quadro = document.getElementById('quadro');
  // vamos obter o contexto de desenho
  var areaDesenho = quadro.getContext("2d");
  
  // podemos desenhar?
  var podeDesenhar = false; // ainda não
  
  // vetores para guardar as posições x, y, e se o mouse está sendo
  // movimentado pressionado
  var vetorX = new Array();
  var vetorY = new Array();
  var vetorArrastar = new Array();
  
  // agora vamos adicionar na área de desenho um "ouvidor" de 
  // eventos mousedown, ou seja, vamos detectar quando o usuário
  // pressionar o botão do mouse (sem soltar) 
  quadro.addEventListener('mousedown', function(e){
    // podemos iniciar o desenho
    podeDesenhar = true;
    registrarClique(e.pageX - this.offsetLeft, e.pageY - this.offsetTop, false);
    desenhar(); // faça o desenho, moço
  });
  
  // o "ouvidor" de evento que detecta se o mouse está sendo arrastado
  // pressionado
  quadro.addEventListener('mousemove', function(e){	
    if(podeDesenhar){
      registrarClique(e.pageX - this.offsetLeft, e.pageY - 
        this.offsetTop, true);
      desenhar(); // faça o desenho, moço
    }
  });

  // o "ouvidor" de evento que detecta se o mouse foi liberado
  // e interrompe o desenho
  quadro.addEventListener('mouseup', function(e){	
    podeDesenhar = false;
  });

  // o mouse saiu da área de desenho?
  quadro.addEventListener('mouseleave', function(e){	
    podeDesenhar = false;
  });

  function registrarClique(x, y, arrastar){
    // aqui nós guardamos em vetores as posições x, y do clique ou
    // o movimento do mouse pressionado.
    vetorX.push(x);
    vetorY.push(y);
    vetorArrastar.push(arrastar);
  }
  
  // é aqui que a mágica ocorre
  function desenhar(){
    // primeiro vamos limpar o quadro de desenho
    areaDesenho.clearRect(0, 0, areaDesenho.canvas.width, 
      areaDesenho.canvas.height);
	
    areaDesenho.strokeStyle = "#5c5cd6"; // cor
    areaDesenho.lineJoin = "round"; // formato da junção de linha
    areaDesenho.lineWidth = 5; // largura da linha
			
    // percorremos os vetores, usando como base o vetor de coordenadas x
    for(var i = 0; i < vetorX.length; i++){		
      areaDesenho.beginPath(); // inicia o caminho
    
      // o mouse foi arrastado neste evento?
      if((vetorArrastar[i] == true && i > 0)){
        areaDesenho.moveTo(vetorX[i - 1], vetorY[i - 1]);
      }
      else{
        // é o início do desenho
        areaDesenho.moveTo(vetorX[i] - 1, vetorY[i]);
      }
     
      // desenha a linha do ponto X ao ponto Y  
      areaDesenho.lineTo(vetorX[i], vetorY[i]);
      // fecha o caminho
      areaDesenho.closePath();
      // conclui de fato o desenho
      areaDesenho.stroke();
    }  
  }
  
  // e aqui nós limpamos a área de desenho e esvaziamos os vetores
  function limpar(){
    areaDesenho.clearRect(0, 0, areaDesenho.canvas.width, 
      areaDesenho.canvas.height);
    vetorX = [];
    vetorY = [];
    vetorArrastar = [];
  }
</script>

</body>
</html>

Salve o código como "desenho.html" (cuidado para não salvar como "desenho.html.txt") e abra-o no seu navegador, remoto ou localmente. Você pode começar suas modificações alterando a cor do desenho, a largura da linha, etc. Você pode também deixar figuras pré-configuradas e até permitir que o usuário inclua fotos no Canvas.

Para os estudantes que já sabem Node.js, saiba que é possível enviar os três vetores via sockets em um ambiente real time para que outros usuários na rede vejam o seu desenho em tempo real. Bons estudos.


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

Como somar os elementos de um array em Rust

Quantidade de visualizações: 708 vezes
Nesta dica mostrarei como podemos somar os valores de um vetor na linguagem Rust. Para isso nós vamos usar um laço for e percorrer os itens do array um de cada vez. Note também o uso da função len() para retornar o tamanho do array.

Veja o código Rust completo para o exemplo:

// esta é a função principal do programa Rust
fn main() {
  // vamos criar um array com 6 elementos
  let valores:[i32;6] = [5, 2, 3, 7, 4, 1];
  // para guardar a soma
  let mut soma:i32 = 0;
  
  // vamos mostrar o conteúdo do array
  println!("Os elementos do array são: {:?}", valores);
 
  // agora vamos somar os elementos do array
  for i in 0..valores.len() {
    soma = soma + valores[i];
  }  
  
  // e mostramos o resultado
  println!("A soma dos elementos é: {}", soma);
}

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

Os elementos do array são: [5, 2, 3, 7, 4, 1]
A soma dos elementos é: 22


Veja mais Dicas e truques de Rust

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.


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