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 - Estruturas de Aço e Madeira
Card 0 de 0
O filtro aplicado não retornou nenhum resultado. Clique o botão Remover Filtro ou experimente um filtro diferente.

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:

Portugol ::: Dicas & Truques ::: Cadeias e Caracteres

Como acessar os caracteres individuais de uma palavra ou frase em Portugol usando a função obter_caracter() da biblioteca Texto

Quantidade de visualizações: 1229 vezes
Em algumas situações nós precisamos acessar os caracteres individuais de uma palavra ou frase no Portugol Studio ou Portugol Web Studio. Para isso nós podemos usar a função obter_caracter() da biblioteca Texto.

Esta função pede, como primeiro argumento, a palavra ou frase a partir da qual o caractere será extraído e, como segundo argumento, o índice do caractere (sempre começando em 0 para o primeiro caractere).

Veja um programa Portugol completo no qual obtemos o primeiro caractere de uma palavra:

programa {
  // vamos importar a biblioteca Texto
  inclua biblioteca Texto --> tx
  
  funcao inicio() {
    cadeia palavra = "PORTUGOL"
    caracter letra = tx.obter_caracter(palavra, 0)
    escreva("A letra retornada é: ", letra)
  }
}

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

A letra retornada é: P

Veja agora como podemos usar o laço PARA para percorrer e exibir todos os caracteres individuais da palavra ou frase:

programa {
  // vamos importar a biblioteca Texto
  inclua biblioteca Texto --> tx
  
  funcao inicio() {
    cadeia palavra = "PORTUGOL"

    para (inteiro i = 0; i <= tx.numero_caracteres(palavra) - 1; i++) {
      caracter letra = tx.obter_caracter(palavra, i)
      escreva("A letra é: ", letra, "\n")
    }
  }
}

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

A letra é: P
A letra é: O
A letra é: R
A letra é: T
A letra é: U
A letra é: G
A letra é: O
A letra é: L


C# ::: Windows Forms ::: Formulários e Janelas

Como abrir outros formulários de sua aplicação C# Windows Forms a partir do formulário principal

Quantidade de visualizações: 33598 vezes
Esta é, sem dúvida, uma das perguntas mais frequentes de meus visitantes. Sendo assim, vou detalhar passo-a-passo como você poderá abrir outros formulários a partir do formulário principal da aplicação.

Assumindo que você já tenha criado o formulário principal, siga estes passos para criar um novo formulário (Visual C# 2005 ou 2008):

a) Vá no menu Project -> Add Windows Form. O novo Form já aparecerá selecionado. Dê um nome a ele, por exemplo, "NovoForm.cs" e clique o botão Add;

b) Coloque os controles que desejar no novo formulário e salve tudo;

c) Volte no formulário principal e adicione o código abaixo no evento Click de um botão:

private void button1_Click(object sender, EventArgs e){
  // vamos criar o novo formulário e exibí-lo
  NovoForm nf = new NovoForm();
  nf.Show();
}

Execute e veja o resultado. Note, contudo, que se clicarmos no formulário principal com o segundo formulário ainda aberto, veremos que o primeiro sobrepõe o segundo. Isso acontece porque abrimos o novo formulário como não modal. Em algumas aplicações este pode não ser o comportamento esperado. Continue seguindo minhas dicas para aprender a diferença entre formulários modais e não modais em Windows Forms e C#.


JavaScript ::: JavaScript para Engenharia ::: Geometria Analítica e Álgebra Linear

Como calcular a distância entre dois pontos no plano em JavaScript - JavaScript para Geometria Analítica e Álgebra Linear

Quantidade de visualizações: 5769 vezes
Como calcular a Distância Euclidiana entre dois pontos usando JavaScript

Em várias aplicações envolvendo geometria, principalmente no desenvolvimento de jogos em JavaScript, é comum nos depararmos com a necessidade de calcular a distância entre dois pontos A e B. Nessa dica mostrarei como efetuar esse cálculo no R2, ou seja, no plano. Em outra dica eu abordo o cálculo no R3 (espaço).

Comece analisando a imagem abaixo:



Veja que temos um ponto A (x = 3; y = 6) e um ponto B (x = 9; y = 4). Para determinarmos a distância entre esses dois pontos no plano cartesiano, temos que realizar a análise tanto no sentido do eixo das abscissas (x) quanto no do eixo das ordenadas (y).

Veja a fórmula:

\[d_{AB} = \sqrt{\left(x_b - x_a\right)^2 + \left(y_b - y_a\right)^2}\]

Agora, jogando os valores dos dois pontos da fórmula nós teremos:

\[d_{AB} = \sqrt{\left(9 - 3\right)^2 + \left(6 - 4\right)^2}\]

Que resulta em 6,32 (aproximadamente).

E agora veja o código JavaScript completo que define as coordenadas dos dois pontos e mostra a distância entre eles:

<html>
<head>
  <title>Estudos JavaScript</title>
</head>
 
<body>
 
<script type="text/javascript">
  // função que permite calcular a distância
  // entre dois pontos no plano (R2)
  function distancia2d(x1, y1, x2, y2){
    var a = x2 - x1;
    var b = y2 - y1;
    var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
    return c;
  }
 
  // vamos definir os dados do primeiro ponto
  var x1 = 3;
  var y1 = 6;
    
  // vamos ler os dados do segundo ponto
  var x2 = 9;
  var y2 = 4;
    
  // vamos obter a distância entre eles
  var distancia = distancia2d(x1, y1, x2, y2);
  document.writeln("Distância entre os dois pontos: " +
    distancia);
</script>
 
</body>
</html>

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

Distância entre os dois pontos: 6.324555320336759


Python ::: Pygame ::: Animação, Animações, Técnicas de Animação

Como criar um relógio analógico no Pygame - Código completo com variáveis e comentários em português

Quantidade de visualizações: 1787 vezes
Nesta dica mostrarei um código para a criação de um relógio analógico completo em Python, com comentários detalhados e fácil de entender. Veja a imagem:



Por simplicidade, eu mantive a mesma cor para todos os elementos da animação e deixei somente o básico mesmo, para que você possa se concentrar nas partes mais importantes.

Neste código você aprenderá como definir o tamanho, título e cor de fundo para uma janela do Pygame do Python. Aprenderá também como definir a quantidade de frames por segundo para a animação, assim como controlar os disparos do timer pygame.time.Clock().

Por fim, o código mostra como calcular o ângulo dos ponteiros das horas, minutos e segundos e efetuar o desenho das retas saindo do centro do círculo. Você sabia, por exemplo, que o ângulo de 45 graus corresponde exatamente à hora 1:30hs?

Em vários exemplos de relógios analógicos na internet, o ponteiro das horas fica preso à uma determinada hora, aguardando o ponteiro dos segundos completar um giro completo. No código que apresento aqui, eu obtive a hora atual como um decimal, o que faz com que o ponteiro das horas mostre a posição real da hora, como um relógio analógico do mundo real.

Para estudantes de matemática, engenharia e física, este código é uma boa aplicação da técnica de se converter coordenadas polares para coordenadas cartesianas.

Eis o código completo para o relógio analógico. Boa diversão.

# vamos importar as bibliotecas necessárias
import pygame, sys
from pygame.locals import *
import math
from datetime import datetime

# função que faz a correção dos ângulos
def corrigir_angulo(angulo):
  return abs(angulo % 360)

# inicializa a biblioteca
pygame.init()

# quantidade de frames por segundo
FPS = 30
# construímos o timer
timer = pygame.time.Clock()

# obtém a superfície do jogo e define o tamanho da tela
janela = pygame.display.set_mode((600, 400))
  
# vamos definir o título da janela do jogo
pygame.display.set_caption('Relógio Analógico no Pygame')

# vamos definir alguns parâmetros
fonte = pygame.font.Font(None, 36)
VERMELHO = (200, 0, 0)
BRANCO = (255, 255, 255)
raio = 150
x_inicial = 300
y_inicial = 200
distancia_aro = 20
  
# e aqui nós entramos no loop do game
while True:
  # vamos pintar a tela toda de branco
  janela.fill(BRANCO)
  
  # monitoramos os eventos
  for evento in pygame.event.get():
    # se o evento foi um pedido para sair
    if evento.type == QUIT:
      # fechamos a tela do jogo 
      pygame.quit()
      # e saimos do programa
      sys.exit()
  
  # vamos desenhar um circulo não preenchido (maior)
  pygame.draw.circle(janela, VERMELHO, (x_inicial, y_inicial), raio, 2)
  # vamos desenhar um circulo não preenchido (menor)
  pygame.draw.circle(janela, VERMELHO, (x_inicial + 1, y_inicial + 1), 5, 0)

  # vamos desenhar os números do relório (1-12)
  for n in range(1, 13):
    # calcula o ângulo dessa hora
    angulo = math.radians((n * (360 / 12)) - 90)
    # agora convertemos o ângulo e o raio para coordenadas cartesianas
    if len(str(n)) > 1:
      x = math.cos(angulo) * (raio - distancia_aro) - 18
    else:
      x = math.cos(angulo) * (raio - distancia_aro) - 10
    y = math.sin(angulo) * (raio - distancia_aro) - 10
    texto_numero = fonte.render(str(n), True, VERMELHO)
    janela.blit(texto_numero, (x_inicial + x, y_inicial + y))

  # vamos obter as horas, minutos e segundos atuais
  hoje = datetime.today()
  horas = hoje.hour % 12
  minutos = hoje.minute
  segundos = hoje.second
  
  # ajustamos as horas para tratar a hora decimal (com frações de horas)
  horas = horas + (minutos * (1 / 60)) + (segundos * (1 / 3600))

  # desenha o ponteiro das horas
  angulo_horas = corrigir_angulo(horas * (360 / 12) - 90)
  angulo_horas = math.radians(angulo_horas)
  hora_x = math.cos(angulo_horas) * (raio - 60)
  hora_y = math.sin(angulo_horas) * (raio - 60)
  coord_finais = (x_inicial + hora_x, y_inicial + hora_y)
  pygame.draw.line(janela, VERMELHO, (x_inicial, y_inicial), coord_finais, 4)

  # desenha o ponteiro dos minutos
  angulo_minutos = corrigir_angulo(minutos * (360 / 60) - 90)
  angulo_minutos = math.radians(angulo_minutos)
  minutos_x = math.cos(angulo_minutos) * (raio - 40)
  minutos_y = math.sin(angulo_minutos) * (raio - 40)
  coord_finais = (x_inicial + minutos_x, y_inicial + minutos_y)
  pygame.draw.line(janela, VERMELHO, (x_inicial, y_inicial), coord_finais, 3)

  # desenha o ponteiro dos segundos
  angulo_segundos = corrigir_angulo(segundos * (360 / 60) - 90)
  angulo_segundos = math.radians(angulo_segundos)
  segundos_x = math.cos(angulo_segundos) * (raio - 30)
  segundos_y = math.sin(angulo_segundos) * (raio - 30)
  coord_finais = (x_inicial + segundos_x, y_inicial + segundos_y)
  pygame.draw.line(janela, VERMELHO, (x_inicial, y_inicial), coord_finais, 1)

  # redesenha a tela continuamente 
  pygame.display.update()

  # aciona o disparo do timer
  timer.tick(FPS)



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

Como usar a classe LinkedList do Java em suas aplicações

Quantidade de visualizações: 27616 vezes
A classe LinkedList é uma implementação da interface List. Esta classe implementa boa parte das operações de uma lista e permite a inserção de qualquer tipo de elemento (incluindo null).

Veja sua posição na hierarquia de classes Java:

java.lang.Object
  java.util.AbstractCollection<E>
    java.util.AbstractList<E>
      java.util.AbstractSequentialList<E>
        java.util.LinkedList<E>


Esta classe implementa as seguintes interfaces: Serializable, Cloneable, Iterable<E>, Collection<E>, Deque<E>, List<E> e Queue<E>.

O uso mais comum de uma lista ligada é quando precisamos adicionar e remover elementos no início ou final da lista, acessar os elementos no início ou final e percorrer a lista elemento por elemento. Não é raro ver programadores usando a classe LinkedList como uma pilha ou fila.

O trecho de código abaixo mostra como criar uma LinkedList, adicionar elementos e percorrê-los usando um ListIterator:

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria uma LinkedList de String
    LinkedList<String> lista = new LinkedList<String>();
    
    // adiciona três elementos na lista
    lista.add("Cuiabá");
    lista.add("Goiânia");
    lista.add("Belo Horizonte");

    // obtém um ListIterator para percorrer toda a
    // lista, começando no primeiro elemento
    ListIterator<String> iterador = lista.listIterator(0);
    while(iterador.hasNext()){  
      String cidade = iterador.next(); 
      System.out.println(cidade); 
    }
  } 
}

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

Cuiabá
Goiânia
Belo Horizonte


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